php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Was ist an diesem script falsch?


 
martinm79
24-01-2004, 05:40 
 
Hallo,
Ich hoffe mal, das ich in diesem forumteil richtig bin.
Das ist ein script, was ein bild hochläd und in einen Ordner image abspeichert.
Das Problem ist, das wenn ich die größe des Bildes beschränke, es aber denn trotzdem hochgeladen wird.
Was ist denn da falsch?


<?php
//Das script soll ein Bild hochladen
//und in einen Ordner image ablegen. (der ordner sollte vorrher erstellt werden.)
//Die datei sollte in hochladen.php abgespeichert werden


$extlimit = "yes"; //Bildendung
$endung = array(".gif",".jpg",".png",".jpeg",".JPG",".GIF",".PNG",".JPEG"); //endungen auswählen!
$sizelimit = "yes"; //yes oder no
$sizebytes = "1500"; //Bildgröße in byte

if($senden) {

if($bilddatei!= "") {

if (($sizelimit == "yes") && ($bilddatei_size > $sizebytes)) {

echo "Das Bild überschreitet die maximale Bildgröße von $sizebytes bytes.";

}

$ext = strrchr($bilddatei_name,'.');

if (($extlimit == "yes") && (!in_array($ext,$endung))) {

echo "Die Bilddatei hat nicht die richtige Endung.";

}
// Fals im Ordner image schon eine datei mit dem selben namen liegt, soll eine Fehlermeldung kommen
elseif (file_exists("images/$bilddatei_name")) {

echo "Die Bilddatei existiert bereits. Bitte ändere den Namen der Datei und versuche es nochmal.";

}

else {

copy($bilddatei,"image/$bilddatei_name");

echo "Bild erfolgreich hochgeladen!";

}
}
}
?>

<form name="mf" action="hochladen.php" method="post" enctype="multipart/form-data">
<input type='submit' NAME='senden' VALUE='Bild hochladen'>
Bild:<input type='file' name='bilddatei' value='durchsuchen'>
</form>


:dontknow:

(Und könnte man das auch so umändern, das das Bild auch in eine MySql Tabelle abgelegt wird? Oder legt man das Bild ausserhalb an und verknüpft das denn anders mit den passenden einträgen in der tabelle?)

 
Seccho
24-01-2004, 10:25 
 
Gib doch am am anfang des scriptes

print_r($_FILES);

aus..

Und zur zweiten Frage.. Die Bilder solltest du nicht in eine DB schreiben.

 
Abraxax
24-01-2004, 12:56 
 
@martinm79
benütze bitte die php-tags des forums! :teach:

 
martinm79
24-01-2004, 18:32 
 
@Abraxax Ja, sorry, wußte ich ja nicht. Bin doch neu. Hoffe jetzt ist es richtig.

 
Abraxax
24-01-2004, 18:57 
 
ok. so ist's besser. und mache sie fortan immer rein. ;)

 
derHund
24-01-2004, 19:53 
 
hmm,


if (($sizelimit == "yes") && ($bilddatei_size > $sizebytes)) {


woher kommt $bilddatei_size?

 
Abraxax
24-01-2004, 20:59 
 
@derHund
hier kommt es her... ;)
<input type='file' name='bilddatei' value='durchsuchen'>


@martinm79
lies dir das hier mal durch und verwende $_FILES dafür.
http://de.php.net/manual/en/features.file-upload.php


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:40 Uhr.