Dateiupload mit PHP
-
- Mitglied
- Beiträge: 124
- Registriert: 04.10.2002 15:02
- Kontaktdaten:
Dateiupload mit PHP
Nachdem ich nun das Formular abgeschickt habe, wie greife ich auf die Datei zu und wie wird sie dann auf den Server geladen?
Ich habe damit keine Erfahrungen. Vielleicht etwas ausführlicher.
Wie kann ich denn das Format der Datei bestimmen, geht das nur über die Endung? Die Dateigröße benötige ich auch.
Vielen Dank für eure Hilfe
Rookie
Ich habe damit keine Erfahrungen. Vielleicht etwas ausführlicher.
Wie kann ich denn das Format der Datei bestimmen, geht das nur über die Endung? Die Dateigröße benötige ich auch.
Vielen Dank für eure Hilfe
Rookie
Hi uploaden kannste mit folgendem Quellcode: (die Grösse kannste erstmal im Formular bestimmen!)
Mit dem Inputfeld kannste die Grösse (bytes) der Datei bestimmen:
<input type="hidden" name="MAX_FILE_SIZE" value="1000">
Code: Alles auswählen
<?php
if($_POST['action']=="upload")
{
$tmp_name = $HTTP_POST_FILES['userfile']['tmp_name']; // Temporäre Datei! Ist irgendwo abgelegt :)
$name = $HTTP_POST_FILES['userfile']['name']; // Der original Name der Datei!
move_uploaded_file($tmp_name, $name); // Die Temporäre Datei wird nun mit dem richtigen Namen auf dem Server erstellt!
}
?>
<html>
<head></head>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<input type="hidden" name="action" value="upload">
<input type="hidden" name="MAX_FILE_SIZE" value="1000">
<input name="userfile" type="file">
<input type="submit" value="Datei uploaden">
</form>
</body>
</html>
<input type="hidden" name="MAX_FILE_SIZE" value="1000">
Zuletzt geändert von Spider am 08.02.2003 17:25, insgesamt 1-mal geändert.
-
- Mitglied
- Beiträge: 124
- Registriert: 04.10.2002 15:02
- Kontaktdaten:
-
- Mitglied
- Beiträge: 124
- Registriert: 04.10.2002 15:02
- Kontaktdaten:
Aber zusätzlich noch mit filesize() prüfen, MAX_FILE_SIZE kann auch ein user mit wenig kenntnissen fälschen.Spider hat geschrieben: Mit dem Inputfeld kannste die Grösse (bytes) der Datei bestimmen:
<input type="hidden" name="MAX_FILE_SIZE" value="1000">
Ausserdem würde das ablegen unter richtigem namen evtl. andere sicherheits probleme mit sich bringen (überschreiben von dateien). Am besten eine id verwenden oder so die man z.B. der datenbank zuordnet, je nachdem was man machen will.
-
- Mitglied
- Beiträge: 124
- Registriert: 04.10.2002 15:02
- Kontaktdaten:
$tmp_name = $HTTP_POST_FILES['userfile']['tmp_name'];
move_uploaded_file($tmp_name, $rootdir."/chat/user_images/".$bild);
ich hab das u.a. als script. $bild ist ein kombinierter name abhängig vom user. (muss da eine Dateiendung mit rein?)
Der upload funktioniert nicht, zumindest habe ich noch keine Datei auf den Server bekommen. Fehlermeldungen gibts keine.
Was ist falsch?
move_uploaded_file($tmp_name, $rootdir."/chat/user_images/".$bild);
ich hab das u.a. als script. $bild ist ein kombinierter name abhängig vom user. (muss da eine Dateiendung mit rein?)
Der upload funktioniert nicht, zumindest habe ich noch keine Datei auf den Server bekommen. Fehlermeldungen gibts keine.
Was ist falsch?