Hoi!
Ich habe eine SQL-Datenbank, die ich updaten möchte. Dazu folgender Code:
--> Ich lese also in die Values der Formular-Textfelder die vorhandenen Werte der Datenbank ein. Mit dem Klick auf Absenden soll nun geupdatet werden...
Dazu habe ich mir folgenden Code einfallen lassen:
Das Problem liegt eindeutig bei der Definition von $tour und $preis. Wenn ich dort z.B. "$tour = $tour1; eingebe, funktioniert das Updaten. Nur wird dann natürlich alles mit dem Wert von $tour1 überschrieben.
Das Problem: Wie kann ich die 1 durch das $u ersetzen?
(Bei der jetzigen Ausführung wird für tour1 "1" , für tour2 "12" für tour3 "123" usw. eingetragen...)
Für Hilfe bin ich immer zu haben
Ich habe eine SQL-Datenbank, die ich updaten möchte. Dazu folgender Code:
PHP-Code:
<form method="POST" action="<? echo $PHP_SELF ?>">
<table width="654">
<?
$sql = "SELECT * FROM preise";
$result = mysql_query($sql,$db);
$i=1;
while($data = mysql_fetch_array($result)) { ?>
<tr>
<td width="492" height="19">Tour</td>
<td width="491" height="19">Preis</td>
<td width="32" height="19">Datum</td>
</tr>
<tr>
<td width="492" height="1">
<input type="hidden" name="edit<? echo $i; ?>" value="<? echo $data[id]; ?>">
<input type="text" name="tour<? echo $i; ?>" size="20" value="<? echo $data[tour]; ?>"></td>
<td width="491" height="1"><input type="text" name="preis<? echo $i ?>" size="4" value="<? echo $data[preis]; ?>">€</td>
<td width="32" height="1"><? echo date("d.m.y",$data[datum]); ?></td>
</tr>
<?
$i++;
} // while($data = mysql_fetch_array($result))
?>
<input type="hidden" name="i" value="<? echo $i ?>">
</table>
<input type="submit" value="Abschicken" name="change"><input type="reset" value="Zurücksetzen" name="B2"></p>
</form>
?>
Dazu habe ich mir folgenden Code einfallen lassen:
PHP-Code:
<?php
$datum = time();
$u = 1;
while($u<$i) {
$tour = $tour$u;
$preis = $preis$u;
$sql = "UPDATE preise SET tour='$tour', preis='$preis', datum='$datum' WHERE id='$edit".$u."'";
echo "$sql
";
mysql_query($sql) or die(mysql_error());
$u++;
}
echo "$u Daten erfolgreich geändert!";
}
?>
Das Problem: Wie kann ich die 1 durch das $u ersetzen?
(Bei der jetzigen Ausführung wird für tour1 "1" , für tour2 "12" für tour3 "123" usw. eingetragen...)
Für Hilfe bin ich immer zu haben
Kommentar