[PHP] Uploadscript funktioniert nicht.

Dieses Thema im Forum "Webentwicklung" wurde erstellt von DOWNandOUT, 5. November 2008 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 5. November 2008
    Uploadscript funktioniert nicht.

    Hi, habe ein "Uploadscript" gecodet ,nur leider uploadet er die File nicht. Auch kein echo etc wird ausgegeben, nur warum nicht?

    Code:
    <br />
    <br />
    <div class="fupload">
    <strong>FILE UPLOAD BETA 0.1</strong>
    <br />
    <br />
    <form method="post" enctype="multipart/form-data">
    <?php
    $hash = date("m.d.y") + time();
    $hash = md5($hash);
    $dir = "mnt/web5/41/36/51633336/htdocs/joel/filebase/files/";
    $type = "JPG";
    $size = "1000000";
    $fsize = $_FILES['file']['size'];
    $ftype = $_FILES['file']['type'];
    
    if(!eregi($type, $ftype)) {
    echo "Es sind nur JPG Dateien erlaubt (BETA)";
    } else {
    if($fsize > $size){
    echo "Die Datei darf nicht größer wie 1mb sein (BETA)";
    } else {
    if(is_uploaded_file($_FILES['file']['tmp_name'])){
    move_uploaded_file($_FILES['file']['tmp_name'], $dir.$hash.".".$type);
    echo "Die Datei wurde erfolgreich hochgeladen.";
    } else {
     echo "Die Datei wurde nicht hochgeladen";
    }
    }
    }
    ?>
    <table cellpadding="2" cellspacing="2">
    <tr>
    <td width="50%"></td>
    <td width="50%"></td>
    </tr>
    <tr>
    <td>Name des Uploads:</td>
    <td><input type="text" name="name"></td>
    </tr>
    <tr>
    <td>Name des Uploaders<font color="red">*</font>:</td>
    <td><input type="text" name="uploader"></td>
    </tr>
    </table>
    <br />
    <br />
    (Erlaubte Dateitypen(Beta): .JPG .GIF .PNG .SWF - Filesize: 1mb)
    <br />
    <input type="file" name="file">
    <br />
    <input type="submit" value="Upload">
    <br />
    <em><font color="red">*Keine Pflicht. Kann auch ein Nickname sein</font></em>
    </form>
    </div>
    Danke
     
  2. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Probier das ganze mal so:
    Code:
    <br />
    <br />
    <div class="fupload">
    <strong>FILE UPLOAD BETA 0.1</strong>
    <br />
    <br />
    <form method="post" enctype="multipart/form-data">
    <?php
    if ($_POST['submit'])
    {
     $hash = md5(date("m.d.y") + time());
     $dir = "mnt/web5/41/36/51633336/htdocs/joel/filebase/files/";
     $type = "JPG";
     $size = "1000000";
     $fsize = $_FILES['file']['size'];
     $ftype = $_FILES['file']['type'];
     
     if(!eregi($type, $ftype))
     {
     echo "Es sind nur JPG Dateien erlaubt (BETA)";
     }
     else
     {
     if($fsize > $size){
     echo "Die Datei darf nicht größer wie 1mb sein (BETA)";
     }
     else
     {
     if(is_uploaded_file($_FILES['file']['tmp_name']))
     {
     move_uploaded_file($_FILES['file']['tmp_name'], $dir.$hash.".".$type);
     echo "Die Datei wurde erfolgreich hochgeladen.";
     }
     else
     {
     echo "Die Datei wurde nicht hochgeladen";
     }
     }
     }
    }
    ?>
    <table cellpadding="2" cellspacing="2">
    <tr>
    <td width="50%"></td>
    <td width="50%"></td>
    </tr>
    <tr>
    <td>Name des Uploads:</td>
    <td><input type="text" name="name"></td>
    </tr>
    <tr>
    <td>Name des Uploaders<font color="red">*</font>:</td>
    <td><input type="text" name="uploader"></td>
    </tr>
    </table>
    <br />
    <br />
    (Erlaubte Dateitypen(Beta): .JPG .GIF .PNG .SWF - Filesize: 1mb)
    <br />
    <input type="file" name="file">
    <br />
    <input type="submit" name="submit" value="Upload">
    <br />
    <em><font color="red">*Keine Pflicht. Kann auch ein Nickname sein</font></em>
    </form>
    </div>
     
  3. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    $dir = "mnt/web5/41/36/51633336/htdocs/joel/filebase/files/";

    wenn das n absoluter Pfad sein soll würd ich mal /mnt/... probiern.
     
  4. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Geht auch nicht.

    @p0w3rn4t0r: geht auch nicht, leider
     
  5. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Kommt nicht mal eine Fehlermeldung, nachdem das Formular abgeschickt wurde?
     
  6. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Nein, garnichts
     
  7. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    error_reporting(E_ALL|E_STRICT);

    und print_r($_POST);
    und print_r($_FILES);
     
  8. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Ohne das man was geklickt hat:
    Notice: Undefined index: file in /mnt/web5/41/36/51633336/htdocs/joel/filebase/fupload.php on line 17

    Notice: Undefined index: file in /mnt/web5/41/36/51633336/htdocs/joel/filebase/fupload.php on line 18

    =

    $fsize = $_FILES['file']['size'];
    $ftype = $_FILES['file']['type'];


    Wenn man geklickt hat:

    Array ( [name] => [uploader] => ) Array ( [file] => Array ( [name] => DSC00043.JPG [type] => image/jpeg [tmp_name] => /var/tmp/phpT2aaRt [error] => 0 [size] => 352912 ) ) Es sind nur JPG Dateien erlaubt (BETA)
     
  9. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Jo da steht doch schon was dein Fehler ist, du suchst in 'type' nach "jpg", aber es heißt "image/jpeg", also musste jpg oder jpeg suchen. oder zumindest jpeg. oO wo is das problem.
     
  10. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Probier es mal so:
    Code:
    <br />
    <br />
    <div class="fupload">
    <strong>FILE UPLOAD BETA 0.1</strong>
    <br />
    <br />
    <form method="post" enctype="multipart/form-data">
    <?php
    if ($_POST['submit'])
    {
     $hash = md5(date("m.d.y") + time());
     $dir = "mnt/web5/41/36/51633336/htdocs/joel/filebase/files/";
     $types = array("jpg", "jpeg");
     $size = "1000000";
     $fsize = $_FILES['file']['size'];
     $ftype = $_FILES['file']['type'];
     
     if(!in_array(strtolower($ftype), $types))
     {
     echo "Es sind nur JPG Dateien erlaubt (BETA)";
     }
     else
     {
     if($fsize > $size){
     echo "Die Datei darf nicht größer wie 1mb sein (BETA)";
     }
     else
     {
     if(is_uploaded_file($_FILES['file']['tmp_name']))
     {
     move_uploaded_file($_FILES['file']['tmp_name'], $dir.$hash.".".$type);
     echo "Die Datei wurde erfolgreich hochgeladen.";
     }
     else
     {
     echo "Die Datei wurde nicht hochgeladen";
     }
     }
     }
    }
    ?>
    <table cellpadding="2" cellspacing="2">
    <tr>
    <td width="50%"></td>
    <td width="50%"></td>
    </tr>
    <tr>
    <td>Name des Uploads:</td>
    <td><input type="text" name="name"></td>
    </tr>
    <tr>
    <td>Name des Uploaders<font color="red">*</font>:</td>
    <td><input type="text" name="uploader"></td>
    </tr>
    </table>
    <br />
    <br />
    (Erlaubte Dateitypen(Beta): .JPG .GIF .PNG .SWF - Filesize: 1mb)
    <br />
    <input type="file" name="file">
    <br />
    <input type="submit" name="submit" value="Upload">
    <br />
    <em><font color="red">*Keine Pflicht. Kann auch ein Nickname sein</font></em>
    </form>
    </div>
    Habe deine eregi-Zeile geändert.
     
  11. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Geht leider auch nicht. Also er läd, ich denke mal schon das er das Bild hochlädt, da muss irgendein Problem mit dem move_uploaded_file sein ..
     
  12. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Deine dir-Angabe ist galube ich falsch, sollte reichen, wenn du von deinem aktuellen Ordner ausgehst (also "mnt/web5/..." weglassen und anstattdessen z.B. "/filebase/").
     
  13. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    nein, in ['type'] steht nicht jpg oder jpeg, da steht der mime, also image/jpeg.

    PHP:
    <? php
        
    //[...]
        
    $types  "image/jpeg" ;
        
    $size  "1000000" ;
        
    $fsize  $_FILES [ 'file' ][ 'size' ];
        
    $ftype  $_FILES [ 'file' ][ 'type' ];
        
        if(
    $ftype  !=  $types ) {
            
    //machwas
        
    }
        
    //[...]
    ?>
    wenns später mehr typen werden machst halt wieder nen array daraus

    ps: hast du glück das php dynamisch typisiert is
     
  14. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Sorry, hast recht Murdoc, war etwas neben der Spur ...

    Hatte es erst mit preg_match und dann der Einfachheit halber kurz auf in_array umgestellt.
     
  15. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Deswegen sagte ich ja auch jpg (war mir nich sicher obs nich auch image/jpg gebn würde ) und jpeg. eregi = durchsuchen, also hätte meins auch funktioniert. So ist es natürlich. auch möglich.
     
  16. 5. November 2008
    AW: Uploadscript funktioniert nicht.

    Vielen Dank an alle, es geht
     
  17. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.