Hallo Gemeinde,
langsam verzweifle ich nun. Die Schleife zum Abfragen der Arrays scheint zu funktionieren, zumindest werden die Daten und die dazugehörigen Texte auf den Server geladen und in die Datenbank eingetragen - trotzdem gibt es nach dem Absenden des Formulars eine Fehlermeldung:
Notice: Undefined offset: 4 in /homepages/.........
Es wird also ein nicht-existierender Arrayinhalt abgefragt. Ich komme aber im Code nun nicht mehr weiter und finde den Fehler nicht!
Ich habe ein Formular:
Ich ordne also jedem Bild ein Copyright zu.
Nun verarbeite ich die Daten wie folgt:
Wenn ich mir
ausgeben lasse, wird auch richtig "4" ausgegeben.
Wo liegt der Fehler, dass es trotzdem ein "Undefined offset" gibt?
langsam verzweifle ich nun. Die Schleife zum Abfragen der Arrays scheint zu funktionieren, zumindest werden die Daten und die dazugehörigen Texte auf den Server geladen und in die Datenbank eingetragen - trotzdem gibt es nach dem Absenden des Formulars eine Fehlermeldung:
Notice: Undefined offset: 4 in /homepages/.........
Es wird also ein nicht-existierender Arrayinhalt abgefragt. Ich komme aber im Code nun nicht mehr weiter und finde den Fehler nicht!
Ich habe ein Formular:
Code:
Bild des Regisseurs: <input name="fupload[0][bild]" type="file"/> Copyright: <input name="fupload[0][copyright]" type="pattern" /> Szenenbild 01: <input name="fupload[1][bild]" type="file"/> Copyright: <input name="fupload[1][copyright]"type="pattern" /> Szenenbild 02: <input name="fupload[2][bild]" type="file"/> Copyright: <input name="fupload[2][copyright]" type="pattern"/> Szenenbild 03: <input name="fupload[3][bild]" type="file" /> Copyright: <input name="fupload[3][copyright]" type="pattern" />
Nun verarbeite ich die Daten wie folgt:
PHP-Code:
for ($i=0;$i<=sizeof($_FILES['fupload']['name']); $i++) {
$copyright=$_POST['fupload'][$i++]['copyright'];
if (!empty($_FILES['fupload']['name'][$i]['bild'])) {
if (is_uploaded_file($_FILES['fupload']['tmp_name'][$i]['bild'])) {
if (($_FILES['fupload']['type'][$i]['bild']=='image/jpeg') OR ($_FILES['fupload']['type'][$i]['bild']=='image/pjpeg') OR ($_FILES['fupload']['type'][$i]['bild']=='image/gif')) {
$Link_type=$_FILES['fupload']['type'][$i]['bild'];
switch ($Link_type) { //5
case "image/jpeg" :
$Link=$Title."-".date('Y-m-d-H:i:s')."-".$i.".jpg";break;
case "image/gif" :
$Link=$Title."-".date('Y-m-d-H:i:s')."-".$i.".gif";break;
default:
$Link=$Title."-".date('Y-m-d-H:i:s')."-".$i.".jpg";break;
}
$Ziel=$path_folder."/".$Link;
copy($_FILES['fupload']['tmp_name'][$i]['bild'], $Ziel) or die ("Konnte nicht kopieren");
$insertSQL = sprintf("INSERT INTO Filmanmeldungen_Bilder (Bild, ID, Copyright, Jahr, Ordner) VALUES (%s, %s, %s, %s, %s)",
GetSQLValueString($Link, "text"),
GetSQLValueString($ID, "text"),
GetSQLValueString($copyright, "text"),
GetSQLValueString($Jahr, "text"),
GetSQLValueString($Title, "text"));
mysqli_select_db($connect, $database_connect);
$Result1 = mysqli_query($connect, $insertSQL) or die(mysqli_connect_error());
header(sprintf("Location: %s", $BackGoTo));
PHP-Code:
sizeof($_FILES['fupload']['name']);
Wo liegt der Fehler, dass es trotzdem ein "Undefined offset" gibt?
Kommentar