Mahlzeit
,
habe eine PHP Funktion die ein Bild bzw Upload überprüft und ein Formular welches die Daten vorher sendet
Formular:
function:
Ich bekomme außer Notice Meldung nur einen weißen Bildschirm deshalb hab ich mal eine Test-echo gemacht mit
Ergebnis war dann >> "/. "

habe eine PHP Funktion die ein Bild bzw Upload überprüft und ein Formular welches die Daten vorher sendet
Formular:
Code:
<form action="" method="post" enctype="multipart/form-data"> <table cellpadding="4" cellspacing="0"> <tr> <td>Titel</td> <td><input type="text" name="titel"></td> </tr> <tr> <td>Bild</td> <td><input type="file" name="datei" /></td> </tr> <tr> <td> </td> <td><input type="submit" name="submit" value="Speichern"></td> </tr> </table> </form>
PHP-Code:
function checkUpload_img()
{
$upload_verzeichnis = 'upload/news_categories';
$gueltige_dateitypen = array('image/jpeg', 'image/pjpeg', 'image/gif', 'image/png');
$gueltige_dateiendungen = array('jpg', 'jpeg', 'gif', 'png');
$max_imgsize = 1025;
$neuer_name = rand(100000, 999999);
if(isset($_FILES['datei']) && $_FILES['datei']['size'] != 0 && !$_FILES['datei']['error'])
{
$endung = explode('.', $_FILES['datei']['name']);
$endung = strtolower($endung[sizeof($endung)-1]);
if(!in_array($endung, $gueltige_dateiendungen))
{
$fehler[] = 'ungültige Dateiendung ('.$endung.')';
}
if(!in_array($_FILES['datei']['type'], $gueltige_dateitypen))
{
$fehler[] = 'ungültiger Dateityp ('.$_FILES['datei']['type'].')';
}
if($_FILES['datei']['size'] > $max_imgsize)
{
$fehler[] = 'Datei ist zu groß ('.number_format($_FILES['datei']['size']/'1024', 2, ',', '.' ).'kB statt erlaubte '.$max_imgsize/'1024'.'kB )';
}
if(empty($fehler))
{
if(move_uploaded_file($_FILES['datei']['tmp_name'], $upload_verzeichnis.'/'.$neuer_name.'.'.$endung))
{
chmod($upload_verzeichnis.'/'.$neuer_name.'.'.$endung, 0644);
$status = 'Upload erfolgreich';
}
else
{
$status = 'Upload nicht erfolgreich';
}
}
else
{
$status = '<b>Folgende Fehler sind aufgetreten:</b><br/>';
foreach($fehler as $value)
{
$status .= $value.'<br/>';
}
}
}
return $status;
}
PHP-Code:
echo "".$upload_verzeichnis."/".$neuer_name.".".$endung;
Kommentar