upload.php

30/03/2013 - 12:35 von Detlef Paschke | Report spam
Hallo an alle,

folgende Situation, ich habe auf meiner Webseite ein kleines php-Script für
einen Dateiupload eingebaut.
Nun ist mir aufgefallen, dass beim betreten der Upload-Seite die Meldung
"Notice: Undefined index: datei in /var/www/htdocs/upload/upload.php on line
39 Keine Datei übertragen."
ausgegeben wird. Nach einem Klick auf den Upload-Button ohne eine Datei
auszuwàhlen erscheint ganz normal die Meldung
"Keine Datei übertragen".
Ich bin mir recht sicher, dass zu der Zeit als ich dieses php-Script
eingebaut habe die Meldung beim betreten der Upload-Seite von vornherein
"Keine Datei übertragen" war.
Was kann ich machen, um die Fehlermeldung beim Betreten der Seite zu
unterbinden bzw. eine "ordentliche" Meldung an dieser Stelle zu haben?
Den php-Teil habe ich angehàngt, die Zeile 39 ist die Zeile
if($_FILES["datei"]["name"] == "") {

<?php

if($_FILES["datei"]["name"] == "") {
echo "Keine Datei übertragen.";
exit;
}

$int_max_filesize = 41943040;

if ($_FILES['datei']['size'] > $int_max_filesize) {
echo "Fehler bei der Übertragung, Datei ist zu gross!";
exit;
}

if($_FILES["datei"]["size"] == 0) {
echo "Leere Datei!";
exit;
}

$datum = date("d.m.y");
$zeit = date("H-i-s");
$file = "(".$datum." ".$zeit.") ".$_FILES['datei']['name'];

# Geben Sie das genaue Ziel-Verzeichniss an, ausgehend von dieser Datei!
move_uploaded_file($_FILES["datei"]["tmp_name"],
"/mnt/sdc/Upload/".$file);

echo "Datei ".$_FILES["datei"]["name"]." erfolgreich übertragen.";
mail("xxx@xxx.xxx","Upload abgeschlossen","Upload von $file ist
abgeschlossen. ","FROM: WebUpload");
?>

Viele Grüße
Detlef Paschke

registered Fli4l-User #00000209
Das "Zitat des Augenblicks" gibt es nur auf
http://schabau.dyndns.org
 

Lesen sie die antworten

#1 Ulf K
30/03/2013 - 12:55 | Warnen spam
Am 30.03.2013 12:35, schrieb Detlef Paschke:

Nun ist mir aufgefallen, dass beim betreten der Upload-Seite die Meldung
"Notice: Undefined index: datei in /var/www/htdocs/upload/upload.php on
line 39 Keine Datei übertragen."aben?

if($_FILES["datei"]["name"] == "") {



Du prüfst nicht ob $_FILES['datei'] überhaupt existiert und greifst
somit, wenn kein Request vorliegt auf das Arrayelement mit dem Key
'name' eines nicht definierten Arrays zu. Also alles korrekt mit der
Fehleranzeige.

Btw.: Bevor ich jetzt Deinen Code komplett auseinander nehme und Dir
erklàre was Du noch alles falsch machst:

[Steuerung von Dateiuploads]
http://www.php.net/manual/de/featur...upload.php

[Wie funktioniert ein Datei-Upload über HTML-Formulare?]
http://php-faq.de/q-formular-upload-php4.html

Gruß, Ulf

Ähnliche fragen