Hallo
ich habe ein kleine problemchen. Hab einen upload-script erstellen lassen. Des fehler beinhaltet. Der erste fehler war das er das bild auf dem server abspeichert aber nicht in der datenbank. Plötzlich speichert es eines tages auch in der datenbank. Der pfad ist in der datenbank gespeichert aber wenns ums auslesen soll kann es nicht auslesen wird kein bild angezeigt. Und es kann nur bilder mit xx.gif sollte aber gif, jpg, png hochladen können.
Warum spinnt das script??
hier ist das script:
srand((double)microtime()*1000000);
if(isset($_POST['submit']) && $_POST['submit'] == "Upload") {
for($i=1;$i<=$nPics;$i++) {
$pic = $_FILES['pic'.$i];
if(empty($pic['name']) || empty($pic['tmp_name']) || $pic['size'] > 1024*1024 || $pic['error'] != 0)
continue;
if($valide_types[$pic['type']]) {
$ext = $valide_types[$pic['type']];
$newfilename = $uploaddir."/".md5(time().uniqid($pic['tmp_name'].rand())).$ext;
move_uploaded_file($pic['tmp_name'], $newfilename) or die('cannot move uploaded file'.$pic['name']);
create_thumb($newfilename, 240, 320) or die('cannot resize file'.$pic['name']);
mysql_query("INSERT INTO $sqltable_pics SET userid='".$id_id."', url='".$newfilename."', date='".time()."';") or die(mysql_error());
$tpl->assign("content","<p>".$i.". Bild erfolgreich hochgeladen!</p>\n");
} else {
foreach($valide_types as $key => $val) {
$types .= "<li>".$key." => ".$val."</li>\n";
}
$error = <<<HTML
<p>Folgende Bildtypen sind erlaubt:</p>
<ul>
$types
</ul>
HTML;
$tpl->assign("content",$error);
}
}
}
$uploadedpics = mysql_result(mysql_query("SELECT COUNT(id) FROM $sqltable_pics WHERE userid='$id_id';"), 0);
$nPics -= $uploadedpics;
if($nPics < 0)
$nPics = 0;
$inputs = '';
for($i=1;$i<=$nPics;$i++) {
$inputs .= ' <label for="pic'.$i.'">Bild '.$i.':<input type="file" name="pic'.$i.'" /></label><br />'."\n";
}
$form = <<<HTML
<form action="" method="post" enctype="multipart/form-data">
$inputs
<input type="hidden" name="nPics" value="$nPics" />
<input type="submit" name="submit" value="Upload" />
</form>
HTML;
$tpl->assign("content", $form);