Uploadscript seite bleibt weis

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Uploadscript seite bleibt weis

    hi,
    bin dabei ein Uploadscript zu basteln es sollen nur bestimmte datei typen zugelassen werden, wenn eine datei mit dem selben Namen schon vorhanden ist soll diese umbennent werden z.B. Datei test.png, jemand anders hat auch eine datei mit dem selben namen jedoch anderen inhalt.
    also soll die zweite datei dann test1.png heißen eine dritte test3.png etc.
    sobald die datei hochgeladen wurde sollen die ganzen Informationen in eine Datenbank geschrieben werden.
    File size
    imagesize
    pfad.
    aber mein Problem ist es wird gar nichts angezeigt.
    PHP-Code:
    <html>

    <head>
    <title>UPLOAD</title>
    </head>

    <body>
    <?php
    if(isset($_FILES["file"]))
       {
    switch(
    $_FILES['file']['type'])
    {
    case 
    "image/png" $error false;
    $endung "png";
    break;
    case 
    "image/jpeg" $error false;
    $endung "jpg";
    break;
    case 
    "image/tiff" $error false;
    $endung "tiff";
    break;
    case 
    "image/jpeg" $error false;
    $endung "jpeg";
    break;
    default : 
    $error true;
    break;
    }
    if(!
    $error)
    {
    if(
    file_exists($_FILES['file']['name'] )){
    $verzeichnis="http://www.php-resource.de/forum/images/";
    $dateiname=$_FILES['file']['name']."{NeueNummer}";
     
    $n_nummer=1;
           
    $a_nummer=array();
           
    $verzeichnisoffen=opendir($verzeichnis);
           while(
    $datei readdir($verzeichnisoffen))
                 {
                 
    $match=str_replace("{NeueNummer}""(.*)"$dateiname);
                 
    preg_match("/" $match $endung "/Uis"$datei$array_datei);
                 if(!empty(
    $array_datei[1]))
                     {
                     
    $a_nummer[]=$array_datei[1];
                 }
           }
           
    closedir($verzeichnisoffen);
           if(
    count($a_nummer)>=1)
              {
              
    $n_nummer=max($a_nummer)+1//
           
    }
           
    $dateiname=str_replace("{NeueNummer}"$n_nummer $endung$dateiname);
           if(!@
    move_uploaded_file($_FILES["file"]["tmp_name"], $verzeichnis $dateiname))
                {
               echo 
    "Es gab einen Fehler<br> Bitte einen weiteren versuch starten!"
                
    }
    }
    }
    else{
      if(
    move_uploaded_file($_FILES['file']['tmp_name'], "http://www.php-resource.de/forum/images/".htmlspecialchars(basename($_FILES['file']['name'] ))))
         {
    $dateiname=htmlspecialchars(basename($_FILES['file']['name'];
    echo 
    "<br /><font color=green><b>Die Datei (".htmlspecialchars(basename($_FILES['file']['name'] )).") wurde erfolgreich hochgeladen</b></font><br />";
        } 
      else{
    echo 
    "<br /><font color=red><b>Es gab einen Fehler beim Hochladen der Datei: (".htmlspecialchars(basename($_FILES['file']['name'] )).")</b></font><br />";
          }

        }
    }
    /*
              $pfad = $dateiname;
                    $format=getimagesize($pfad);
                      $fielsize=filesize($pfad);
        redirect("uploadimage-2.php&path=".$pfad."&format=".$format."&filesize=".$filesize."","",0);
    */
    ?>
    Hier haben Sie die Moeglichkeit ein Bild hochzuladen. Es sind nur Grafiken erlaubt die das Format: gif, jpg, jpeg, jpe oder png haben!
    <form method="POST" action="<?php echo $PHPSELF?>" enctype="multipart/form-data">
    <p>Datei upload:<br>
    <input type="file" name="file" size="60"><br>
    <input type="submit" name="Upload" value="Upload" />
    </form>

    </body>

    </html>
    [FONT="Arial"][COLOR="Red"]Noch nicht gelöst[/COLOR][/FONT]
    http://www.php-resource.de/forum/php...-auslesen.html

  • #2
    @ vor Funktionsaufrufen rauswerfen;
    error_reporting auf E_ALL und display_errors auf on stellen, wenn nicht bereits geschehen.
    Kontrollausgaben machen, eventuellen Fehlercode des Uploads auswerten.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      error reporting und error display hatte ich drinnen aber wurde mir auch nichts angezeigt.
      ich vermute es liegt an irgend etwas dieses blockes
      PHP-Code:
      if(file_exists($_FILES['file']['name'] )){
      $verzeichnis="http://www.php-resource.de/forum/images/";
      $dateiname=$_FILES['file']['name']."{NeueNummer}";
       
      $n_nummer=1;
             
      $a_nummer=array();
             
      $verzeichnisoffen=opendir($verzeichnis);
             while(
      $datei readdir($verzeichnisoffen))
                   {
                   
      $match=str_replace("{NeueNummer}""(.*)"$dateiname);
                   
      preg_match("/" $match $endung "/Uis"$datei$array_datei);
                   if(!empty(
      $array_datei[1]))
                       {
                       
      $a_nummer[]=$array_datei[1];
                   }
             }
             
      closedir($verzeichnisoffen);
             if(
      count($a_nummer)>=1)
                {
                
      $n_nummer=max($a_nummer)+1//
             
      }
             
      $dateiname=str_replace("{NeueNummer}"$n_nummer $endung$dateiname);
             if(!
      move_uploaded_file($_FILES["file"]["tmp_name"], $verzeichnis $dateiname))
                  {
                 echo 
      "Es gab einen Fehler<br> Bitte einen weiteren versuch starten!"
                  
      }
      }

      wieso wird die URL http://www.php-resource.de/forum/images/ ausgegeben?
      im quellcode steht "images/"...
      bug im forum BB code
      Zuletzt geändert von Rey; 24.09.2009, 15:43.
      [FONT="Arial"][COLOR="Red"]Noch nicht gelöst[/COLOR][/FONT]
      http://www.php-resource.de/forum/php...-auslesen.html

      Kommentar


      • #4
        Zitat von Rey Beitrag anzeigen
        error reporting und error display hatte ich drinnen aber wurde mir auch nichts angezeigt.
        Toll, damit bist du auf genau einen der Punkte, die ich angesprochen hatte, eingegangen!
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          das @ hatte ich auch mal rausgenommen,
          und den anderen punkt verstehe ich nicht. zumal wie gesagt ich nicht einmal das formular sehe
          [FONT="Arial"][COLOR="Red"]Noch nicht gelöst[/COLOR][/FONT]
          http://www.php-resource.de/forum/php...-auslesen.html

          Kommentar


          • #6
            Benutze Kommentare, um Teile des Codes zu deaktivieren. Achte dabei darauf, dass bei Blöcken ([FONT="Courier New"]{...}[/FONT]) immer beide Klammern entweder aktiv oder auskommentiert sind. Mach das solange, bis das Formular angezeigt wird. Dann hast du die fehlerhaft Stelle eingegrenzt und kannst sie sukzessive noch weiter eingrenzen.

            Trotzdem kann ich mir nicht vorstellen, dass dir keine Fehler angezeigt werden. Hast du error_reporting und display_errors auch richtig benutzt?

            Gruß,

            Amica
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar


            • #7
              hm das ist dumm gelaufen nun weiß ich das die komplette file exist falsch ist ;/
              und ja meines wissens hatte ich die richtig eingesetzt.
              ich hatte diese zeile am anfang des php dokuments eingefügt
              error_reporting(E_ALL);
              ini_set('display_errors', 1);
              [FONT="Arial"][COLOR="Red"]Noch nicht gelöst[/COLOR][/FONT]
              http://www.php-resource.de/forum/php...-auslesen.html

              Kommentar


              • #8
                file_exists($_FILES['file']['name'])
                ist doch eh Blödsinn, der Dateipfad steht in tmp_name (siehe auch dein move_uploaded_file-Aufruf).

                Kommentar

                Lädt...
                X