moin, moin,
dem User ist es erlaubt Bilder hochzuladen, wie viele ist mir egal. Das Formular, das den INSERT füttert entsteht über eine foreach-Schleife, die für jedes Bild, dass hochgeladen werden soll ein hidden field anlegt, entsprechend numeriert und als Wert den jeweiligen Dateinamen einträgt.
Die Tabelle hat eine PictureID als auto increment und eine Spalte Screenshot1 ganz nomal text (hier soll der Dateiname landen).
Fallbeispiel:
User will 4 Bilder hochladen. Das Ergebnis meiner foreach-Ausgabe sieht dann so aus:
<input type="hidden" name="Screenshot1" value="image1.gif">
<input type="hidden" name="Screenshot2" value="image2.gif">
<input type="hidden" name="Screenshot3" value="image3.gif">
<input type="hidden" name="Screenshot4" value="image4.gif">
Die DB-Tabelle sieht so aus:
PictureID INT/auto increment
Screenshot1 Text
Er soll jetzt checken, dass er drei Tabellenspalten zu wenig hat (Screenshot2, Screenshot3, Screenshot4) und die entsprechend den hidden fields anlegen und das INSERT vervollständigen.
So sieht meine INSERT-Anweisung derzeit aus - es fehlt wahrscheinlich das entscheidende IF mit einer UPDATE-Anweisung...
Bin für jede Hilfe dankbar, thx, mil
dem User ist es erlaubt Bilder hochzuladen, wie viele ist mir egal. Das Formular, das den INSERT füttert entsteht über eine foreach-Schleife, die für jedes Bild, dass hochgeladen werden soll ein hidden field anlegt, entsprechend numeriert und als Wert den jeweiligen Dateinamen einträgt.
Die Tabelle hat eine PictureID als auto increment und eine Spalte Screenshot1 ganz nomal text (hier soll der Dateiname landen).
Fallbeispiel:
User will 4 Bilder hochladen. Das Ergebnis meiner foreach-Ausgabe sieht dann so aus:
<input type="hidden" name="Screenshot1" value="image1.gif">
<input type="hidden" name="Screenshot2" value="image2.gif">
<input type="hidden" name="Screenshot3" value="image3.gif">
<input type="hidden" name="Screenshot4" value="image4.gif">
Die DB-Tabelle sieht so aus:
PictureID INT/auto increment
Screenshot1 Text
Er soll jetzt checken, dass er drei Tabellenspalten zu wenig hat (Screenshot2, Screenshot3, Screenshot4) und die entsprechend den hidden fields anlegen und das INSERT vervollständigen.
PHP-Code:
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "ScreenshotsUpload")) {
$insertSQL = sprintf("INSERT INTO pictures (Screenshot1) VALUES (%s)",
GetSQLValueString($_POST['Screenshot1'], "text"));
mysql_select_db($database_connGreen, $connGreen);
$Result1 = mysql_query($insertSQL, $connGreen) or die(mysql_error());
$insertGoTo = "success.php?ID=".mysql_insert_id();
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}
Bin für jede Hilfe dankbar, thx, mil
Kommentar