Bild Bild
Du bist hier: Startseite » Tutorials » PHP - Einfacher Upload Tutorial

PHP - Einfacher Upload.

1716 Zugriffe - männlich habbolegend off - 03.08.2009 18:08 Uhr - Tutorial-Version: 4 -
anzeigen


Hier hab ich mal ein kleines Tutorial für einen Upload.

Als erstes erstellt ihr die upload.php in der sich alles befindet.
Wir fangen mit der Verzeichnisauswahl an:
Erstellt ein Verzeichnis namens uploads und schreibt in die upload.php hinein, wie das verzeichnis heißt:
CODE:
<?php
$dir 
'uploads';


Danach kommt das Formular:
CODE:
echo '<form action="" method="post" enctype="multipart/form-data">
  <input name="datei" type="file" />&nbsp;
  <input name="upload" type="submit" value="Hochladen" />
</form>';


Nun kommen wir zur Umbennen Funktion, damit die datei nicht den selben Namen erhält, wie der Uploader sie hochlädt:
CODE:
if(isset($_POST['upload']))
{
       // Zufälliger Dateiname:
          $word = md5(time());

       // Ein paar Zeichen vom Zufälligen Dateinamen abziehen
          $word = substr($word, -7);
      
   // Dateifeld definieren
      $datei        = $_FILES['datei']['name'];

   // Dateiformat erfassen
      $info   = pathinfo($datei);
      $format = $info["extension"];
      
   // Der entgültige Dateiname
      $dateiname    = $word.'.'.$format;



Nachdem wir das gemacht haben, müssen wir noch die Uploadfunktion einbauen, das sieht dann wiefolgt aus:
CODE:
// Erlaubte Dateitypen
       $allowed_types = "(zip|rar|ZIP|RAR|png|jpg|jpeg|gif)";
       
        if(preg_match("/\." . $allowed_types . "$/i", $_FILES["datei"]["name"])) 
        {
           $dateiupload = move_uploaded_file($_FILES['datei']['tmp_name'], "$dir/$dateiname");
       } else {
          echo 'Ungültiges Dateiformat';
       }
        }
    ?>


Und zum Schluss, für die Faulen alles zusammen:
CODE:
<?php
    $dir 
'uploads';
        echo 
'<form action="" method="post" enctype="multipart/form-data">
      <input name="datei" type="file" />&nbsp;
      <input name="upload" type="submit" value="Hochladen" />
    </form>'
;
    if(isset(
$_POST['upload']))
    {
           
// Zufälliger Dateiname:
              
$word md5(time());

           
// Ein paar Zeichen vom Zufälligen Dateinamen abziehen
              
$word substr($word, -7);
         
       
// Dateifeld definieren
          
$datei        $_FILES['datei']['name'];

       
// Dateiformat erfassen
          
$info   pathinfo($datei);
          
$format $info["extension"];
         
       
// Der entgültige Dateiname
          
$dateiname    $word.'.'.$format;
   
   
// Erlaubte Dateitypen
   
$allowed_types "(zip|rar|ZIP|RAR|png|jpg|jpeg|gif)";
   
    if(
preg_match("/\." $allowed_types "$/i"$_FILES["datei"]["name"])) 
    {
       
$dateiupload move_uploaded_file($_FILES['datei']['tmp_name'], "$dir/$dateiname");
   } else {
      echo 
'Ungültiges Dateiformat';
   }
    }
    
?>


Ich wünsch euch noch viel Spaß damit Smily NR:2

Information:
Das Script ist auf Funktionalität getestet und Funktioniert!

Gebt dem Ordner alle rechte sodass dort auch die Datein gespeichert werden können.


Zurück


#38 von männlichpro zerfleischer off Homepage am 14.12.2009 um 19:11 Uhr
Poste dein Code mal Bitte im Forum.

Dein Ordner muss das "s" hinten dran bekommen!!! es steht bei dir nur upload da, das ist aber falsch wenn du es nur kopiert hast.

Bitte keine Frage per PN an mich die im Forum schon Tausend mal beantwortet wurden. Einfach mal die Augen aufmachen. Wenn es aber garnicht weitergeht dann fragt ruhig. :=)
Ich habe auch eine Galeri Smily NR:8
http://www.ntmb.de/member/user_galerie_16_new_0.html einfach mal guggen und lachen oder freuen.

Die Gymnasiasten sind so blöd.... die rechnen mit Buchstaben
#37 von männlich bluereck off Homepage am 14.12.2009 um 19:08 Uhr
Und schon das nächste Problem??.

Habe die Datei Upload genannt, oderner auch und auch im Code.
Nun auch die 777 Rechte und hochgeladen, jetzt komme nfolgende Meldungen

Warning: move_uploaded_file(uploads/8d4.png) [function.move-uploaded-file]: failed to open stream: No such file or directory in /var/www/pages/levis/web/imgload/upload/upload.php on line 42

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/var/www/pages/levis/tmp/phpRaMBm0' to 'uploads/8d4.png' in /var/www/pages/levis/web/imgload/upload/upload.php on line 42

#36 von männlichpro zerfleischer off Homepage am 14.12.2009 um 18:35 Uhr
Zitat:
www/upload/upload-ntmb.php


Da ist der fehler doch :=)

Lese dir mal den ersten abschnitt durch. Also das über dem ersten Codeschnipsel. Dann wirst du denke ich sehen was falsch gelaufen ist.

Wenn du doch nicht weiterkommen solltest.

Lese es nochmal bis dir wasd auffällt :=)

Bitte keine Frage per PN an mich die im Forum schon Tausend mal beantwortet wurden. Einfach mal die Augen aufmachen. Wenn es aber garnicht weitergeht dann fragt ruhig. :=)
Ich habe auch eine Galeri Smily NR:8
http://www.ntmb.de/member/user_galerie_16_new_0.html einfach mal guggen und lachen oder freuen.

Die Gymnasiasten sind so blöd.... die rechnen mit Buchstaben
#35 von männlich bluereck off Homepage am 14.12.2009 um 16:23 Uhr
Ich habe alles auf 777 gesetzt. Ich habe die Faule Version gneommen und hochgeladen, 777 gestellt und probiert, kommt aber immer der Fehler. Muss ich an dem Code was ändern oder nicht?

Kannst du mir sonst das fertigmachen?
Mein ICQ, 371802130

#34 von männlichpro zerfleischer off Homepage am 13.12.2009 um 12:26 Uhr
Hast du dem Ordner alle rechte gegeben?
Sollte 777 haben oder alle Hacken dort sein. Dann gehts auch mit dem Script.

Werde es mal hjinzuschreiben ^^

Bitte keine Frage per PN an mich die im Forum schon Tausend mal beantwortet wurden. Einfach mal die Augen aufmachen. Wenn es aber garnicht weitergeht dann fragt ruhig. :=)
Ich habe auch eine Galeri Smily NR:8
http://www.ntmb.de/member/user_galerie_16_new_0.html einfach mal guggen und lachen oder freuen.

Die Gymnasiasten sind so blöd.... die rechnen mit Buchstaben
#33 von männlich bluereck off Homepage am 13.12.2009 um 09:51 Uhr
Also bei mir klappt es nicht, da kommt immer die Fehlermeldung:

Warning: move_uploaded_file(uploads/bf81edd.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory in /users/loy-elements/www/upload/upload-ntmb.php on line 30

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/users/loy-elements/temp/phpIZxQiN' to 'uploads/bf81edd.jpg' in /users/loy-elements/www/upload/upload-ntmb.php on line 30

Ich habe auch alles so in ne php datei kopiert wie es da oben steht.

#32 von männlichpro zerfleischer off Homepage am 28.09.2009 um 20:12 Uhr
Ja kannst du auch machen. Aber hier ist es für die bessere übersicht beim Programmieren extra so gemacht.

Wenn du nicht weißst wie man einen ordner zurück geht dann einfach so schreiben ... href="../ordner/datei.html">... mit dem ../ geht man einen ordner zurück und dazu haben wir glaube ich auch ein Tutorial hier. Muss ich mal guggen ob ich es Finde

Bitte keine Frage per PN an mich die im Forum schon Tausend mal beantwortet wurden. Einfach mal die Augen aufmachen. Wenn es aber garnicht weitergeht dann fragt ruhig. :=)
Ich habe auch eine Galeri Smily NR:8
http://www.ntmb.de/member/user_galerie_16_new_0.html einfach mal guggen und lachen oder freuen.

Die Gymnasiasten sind so blöd.... die rechnen mit Buchstaben
#31 von männlich Habbosun off am 28.09.2009 um 18:30 Uhr
Also geht ganz gut, kann man das mit dem Vezreichnis eigentlich ins Hauptverzeichnis machen? Also Root?

#30 von männlichpro chrisboy off Homepage am 21.09.2009 um 16:51 Uhr
schreibst einfach die warnung und darunter dann den Code oder du macht es per Ifram oder Inclubed

Bild
#29 von weiblichpro dassindwir off Homepage am 21.09.2009 um 16:45 Uhr
ja das könnte Passiren allso immer kontrollieren und die User darauf hinweisen das
nur Bilder hochgeladen werden dürfen die ihnen gehören

Bild
Liebe Grüße
dassindwir

StayFriends du auch ?

« 1 2 3 4 »

Nur regestrierte Mitglieder könnten ein Kommentar schreiben.

Melde dich doch ganz einfach an, es ist kostenlos. :-)