[PHP] Mehrfacher Datei-Upload
moidaschl 11.09.2005 - 17:57 827 4
moidaschl
Vollzeit-Hackler
|
Abend! Ich bin gerade dabei ein Script zu schreiben wo zwei Files gleichzeitig upgeloaded werden sollen (huh - geht das?). Entweder hab ich mich nur vertippt oder es is ein grundlegender Denkfehler bei der Sache, aber es kommt immer die Fehlermeldung "Bild groß fehlt", auch wenn ein Pfad angegeben wurde. Das er dann zum Upload nichtmehr kommt ist eh klar. Warum? if(isset($_POST['submit'])) {
// submitted
// data checken
$check = 0;
if($_POST['titel'] == '') {
echo "<center><font color=\"#B52E2E\"><b>Name fehlt</b></font></center>\n";
$check++;
}
if($_POST['link'] == '') {
$_POST['link'] = "n/A";
}
echo $_FILES['bild_big']['tmp_name'];
if(!isset($_FILES['bild_big']['tmp_name'])) {
echo "<center><font color=\"#B52E2E\"><b>Bild groß fehlt</b></font>
</center>\n";
$check++;
}
if($check == 0) {
// uploaden
$path_big = "images/sponsoren/".$_FILES['bild_big']['tmp_name'];
if(!isset($_FILES['bild_small']['tmp_name'])) {
$path_small = $path_big;
} else {
$path_small = "images/sponsoren/".$_FILES['bild_small']['tmp_name'];
}
move_uploaded_file($_FILES['bild_big']['tmp_name'], $path_big);
move_uploaded_file($_FILES['bild_small']['tmp_name'], $path_small);
$sql = "INSERT INTO sponsoren
(name, link, path_big, path_short)
VALUES
('".$_POST['titel']."', '".$_POST['link']."',
'".$path_big."', '".$path_short."')";
mysql_query($sql);
}
echo "<br>";
}
echo "<form method=\"post\" action=\"index.php?page=admin_sponsor&action=add_spon\">
\n";
echo "<table border=\"0\" align=\"center\" width=\"80%\" cellspacing=\"0\"
class=\"archtable\" cellpadding=\"2px\">\n";
echo "<tr>\n";
echo "<td class=\"top_right\" colspan=\"2\"> • <b>Sponsor hinzufügen</b></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td class=\"body\"><b>Name</b></td>\n";
echo "<td class=\"body_right\"><input name=\"titel\" type=\"text\" size=\"43\">
</td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td class=\"body\"><b>Link</b></td>\n";
echo "<td class=\"body_right\"><input name=\"link\" type=\"text\" size=\"43\">
</td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td class=\"body\"><b>Bild - Groß</b></td>\n";
echo "<td class=\"body_right\"><input name=\"bild_big\" type=\"file\" size=\"25\">
</td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td class=\"body\"><b>Bild - Klein</b></td>\n";
echo "<td class=\"body_right\"><input name=\"bild_small\" type=\"file\" size=\"25\">
</td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td></td>\n";
echo "<td><input type=\"submit\" name=\"submit\" value=\"- Eintragen -\"></td>\n";
echo "</tr>\n";
echo "</table><br \>\n";
echo "</form>\n";
Ich hoff mein Programmierstil is ned zu schlecht, man hätte hald diverse HTML-Tags noch zusammenfassen können thanks in advance, daschl
Bearbeitet von moidaschl am 13.09.2005, 21:50
|
Rektal
Here to stay
|
Schau dir mal genau an wie $_FILES aussieht (Hint: var_dump($_FILES); ), vielleicht hilft dir das schon?
|
cduke
Big d00d
|
Hi,
in Deinem Form-Tag fehlt das Attribut enctype="multipart/form-data".
greetz cduke
|
cduke
Big d00d
|
Noch etwas ist mir aufgefallen: statt den 1 Milliarden echo's kannst Du auch einfach den php-Tag schließen (?> und dann direkt in HTML loslegen - also die Gschichteln anbringen, die jetzt in den echo's stehen. Wenn Du wieder in php weiter machen willst, dann öffnest Du den php-Tag wieder <?php usw. hth cduke
|
moidaschl
Vollzeit-Hackler
|
Hi,
in Deinem Form-Tag fehlt das Attribut enctype="multipart/form-data".
greetz cduke oooh shit dass ich das vergessen habe, dachte ich hätte es drin. danke! ja das mit den echos muss ich auch noch machen, nur in der hitze des gefechts mach ich einfach hunderte von denen
|