Hallo zusammen
Ich bin anscheinend etwas begriffsstutzig. Hab schon mehrere Foren durchsucht und auch ähnliche Themen gefunden konnte es aber nicht für mein Problem umsetzen, bin halt noch Anfänger.
Ich hab mir eine SQL-Datenbank gebastelt mit 48 Datensätzen die sich in der Anzahl nicht verändern werden/sollen, einzig die letzten 7 Felder jedes Datenssatzes sollen geupdatet werden können. Soweit alles bestens, das anzeigen funktioniert problemlos (siehe php3.jpg).
Nun endlich zum Problem: Ich habe nun eine php-Seite mit mehreren Formularen (im Moment 2 von später 48) in der jedes Formular für einen Datensatz bzw. eine Tabellenzeile der angezeigten Tabelle steht. Wenn ich nun Datensatz/Zeile 1 aufülle und abschicke wird der ordungsgemäss in SQL eingetragen bzw. geändert, Beim zweiten Datensatz/Zeile wird aber der erste Datensatz wieder resetet bzw. der Feldinhalt gelöscht.
Daselbe auch umgekehrt. (siehe php1.jpg und php2.jpg)
Ausserdem möchte ich am Ende der Seite nur 1 Submit-Button anstatt in jeder Zeile.
Ich habe an mehreren Stellen etwas von Hidden-Feldern gelesen kapier das allerdings nicht.
Man kann natürlich die Daten über phpMyAdmin ändern aber es sollen noch andere die Daten ändern können.
@Penizillin: Habe die Fehlermeldungen ausgemerzt und Post etwas geändert.
Hier die Codes:
aces_rares_edit.php
editrare.php
Ich bin anscheinend etwas begriffsstutzig. Hab schon mehrere Foren durchsucht und auch ähnliche Themen gefunden konnte es aber nicht für mein Problem umsetzen, bin halt noch Anfänger.
![Smilie](https://www.php-resource.de/forum/core/images/smilies/smile.gif)
Ich hab mir eine SQL-Datenbank gebastelt mit 48 Datensätzen die sich in der Anzahl nicht verändern werden/sollen, einzig die letzten 7 Felder jedes Datenssatzes sollen geupdatet werden können. Soweit alles bestens, das anzeigen funktioniert problemlos (siehe php3.jpg).
Nun endlich zum Problem: Ich habe nun eine php-Seite mit mehreren Formularen (im Moment 2 von später 48) in der jedes Formular für einen Datensatz bzw. eine Tabellenzeile der angezeigten Tabelle steht. Wenn ich nun Datensatz/Zeile 1 aufülle und abschicke wird der ordungsgemäss in SQL eingetragen bzw. geändert, Beim zweiten Datensatz/Zeile wird aber der erste Datensatz wieder resetet bzw. der Feldinhalt gelöscht.
Daselbe auch umgekehrt. (siehe php1.jpg und php2.jpg)
Ausserdem möchte ich am Ende der Seite nur 1 Submit-Button anstatt in jeder Zeile.
Ich habe an mehreren Stellen etwas von Hidden-Feldern gelesen kapier das allerdings nicht.
![EEK!](https://www.php-resource.de/forum/core/images/smilies/eek.gif)
Man kann natürlich die Daten über phpMyAdmin ändern aber es sollen noch andere die Daten ändern können.
@Penizillin: Habe die Fehlermeldungen ausgemerzt und Post etwas geändert.
Hier die Codes:
aces_rares_edit.php
PHP-Code:
<?php
require("connectdb.php");
$res1 = mysql_db_query("items", "SELECT * FROM aces_rares WHERE id = 1"); //erster SQL-Datensatz bzw. Zeile der Tabelle
$res2 = mysql_db_query("items", "SELECT * FROM aces_rares WHERE id = 2"); //zweiter SQL-Datensatz bzw. Zeile der Tabelle
?>
</tr>
<tr>
<form name="01" action="editrare.php" method="post"> <!-- Erster SQL-Datensatz bzw. Zeile der Tabelle -->
<td height="23" bgcolor="#000033" class="tabellelinks"><a href="#mc" onClick="MM_openBrWindow('http://mib.r-appert.ch/items/php/item.php?id=16','','width=420,height=600')">Paw
of Tiger</a></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="core01" type="text" value="<?php echo mysql_result($res1,0,"core"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="frame01" type="text" value="<?php echo mysql_result($res1,0,"frame"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="hull01" type="text" value="<?php echo mysql_result($res1,0,"hull"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="tech01" type="text" value="<?php echo mysql_result($res1,0,"tech"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="comp01" type="text" value="<?php echo mysql_result($res1,0,"comp"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="adt01" type="text" value="<?php echo mysql_result($res1,0,"adt"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="adh01" type="text" value="<?php echo mysql_result($res1,0,"adh"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input type="submit" name="01" value="ändern"></td>
</form>
</tr>
<tr>
<form name="02" action="editrare.php" method="post"> <!-- Zweiter SQL-Datensatz bzw. Zeile der Tabelle -->
<td height="23" bgcolor="#000033" class="tabellelinks"><a href="#mc" onClick="MM_openBrWindow('http://mib.r-appert.ch/items/php/item.php?id=17','','width=420,height=600')">Peacemaker</a></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="core02" type="text" value="<?php echo mysql_result($res2,0,"core"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="frame02" type="text" value="<?php echo mysql_result($res2,0,"frame"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="hull02" type="text" value="<?php echo mysql_result($res2,0,"hull"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="tech02" type="text" value="<?php echo mysql_result($res2,0,"tech"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="comp02" type="text" value="<?php echo mysql_result($res2,0,"comp"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="adt02" type="text" value="<?php echo mysql_result($res2,0,"adt"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input name="adh02" type="text" value="<?php echo mysql_result($res2,0,"adh"); ?>" size="8" maxlength="3"></td>
<td height="23" bgcolor="#000033" class="tabelle"> <input type="submit" name="02" value="ändern"></td>
</form>
</tr>
PHP-Code:
<?php
$co01 = ($_POST["core01"]);
$fr01 = ($_POST["frame01"]);
$hu01 = ($_POST["hull01"]);
$te01 = ($_POST["tech01"]);
$cp01 = ($_POST["comp01"]);
$at01 = ($_POST["adt01"]);
$ah01 = ($_POST["adh01"]);
$co02 = ($_POST["core02"]);
$fr02 = ($_POST["frame02"]);
$hu02 = ($_POST["hull02"]);
$te02 = ($_POST["tech02"]);
$cp02 = ($_POST["comp02"]);
$at02 = ($_POST["adt02"]);
$ah02 = ($_POST["adh02"]);
require("connectdb.php");
mysql_query("UPDATE aces_rares SET core='$co01', frame='$fr01', hull='$hu01', tech='$te01', comp='$cp01', adt='$at01',
adh='$ah01' WHERE id = 1")
and
mysql_query("UPDATE aces_rares SET core='$co02', frame='$fr02', hull='$hu02', tech='$te02', comp='$cp02', adt='$at02',
adh='$ah02' WHERE id = 2")
or die(mysql_error());
mysql_close();
print "<font size=\"4\"><b>die Änderungen wurden durchgeführt</b></font>";
?>
Kommentar