ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
462
462
EMPFEHLEN
-
09.10.05 16:16 #1
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.
Hier der Code:
aces_rares_edit.php
editrare.phpPHP-Code:<?php
$db = mysql_connect(localhost, name, passwort);
$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>
<td height="80" colspan="9" bgcolor="#000033" class="tabelle"><a href="#mc">Melee</a> | <a href="#tmc">Hightech
Melee</a> | <a href="#pc">Pistols</a> | <a href="#tpc">Hightech
Pistols</a> | <a href="#rc">Rifles</a> | <a href="#trc">Hightech
Rifles</a> | <a href="#hc">Canons</a> | <a href="#thc">Hightech
Canons</a><br> <a href="#apu">APU PSI Spells</a> | <a href="#ppu">PPU
SPI Spells</a> | <a href="#drone">Drones</a> | <a href="#tool">Tools</a> | <a href="#imp">Implants</a></td>
</tr>
<tr>
<td height="23" colspan="9" class="tabellelinks"> </td>
</tr>
<tr>
<td height="40" colspan="9" bgcolor="#333333" class="mittel">
<div align="center">Melee<a name="mc"></a></div></td>
</tr>
<tr class="tabellenkopflinks">
<td bgcolor="#666666" class="tabellenkopflinks">Name</td>
<td width="54" bgcolor="#666666" class="tabellenkopf">Core</td>
<td width="56" bgcolor="#666666" class="tabellenkopf">Frame</td>
<td width="55" bgcolor="#666666" class="tabellenkopf">Hull</td>
<td width="56" bgcolor="#666666" class="tabellenkopf">Tech</td>
<td width="57" bgcolor="#666666" class="tabellenkopf">Comp.</td>
<td width="58" bgcolor="#666666" class="tabellenkopf">AdT</td>
<td width="53" bgcolor="#666666" class="tabellenkopf">AdH</td>
<td width="53" bgcolor="#666666" class="tabellenkopf"> </td>
</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>";
?>Geändert von Papi62 (09.10.05 um 16:22 Uhr)
-
10.10.05 17:25 #2
Währ schon nett wenn mir jemand einen Tip geben könnte
-
1. siehe http://de3.php.net/manual/de/functio...l-db-query.phpPHP-Code:
<?php
$db = mysql_connect(localhost, name, passwort);
$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
?>
2. was soll das? Willst du das dann später alles 84 mal schreiben? Vieleicht noch öffter wenn mal neue Datensätze dazu kommen? Das ist nicht der Sinn von DB-Systemen - Stichwort "Skalierbarkeit".Anmerkung: Diese Funktion ist seit PHP 4.0.6 veraltet. Verwenden Sie diese Funktion nicht. Stattdessen sollten Sie die Funktionen mysql_select_db() und mysql_query() verwenden.
Richtig:... und in deine editrare.php brauchst du nur einPHP-Code:<?php
$db = mysql_connect("localhost", "name", "passwort");
mysql_select_db("db_name");
$result = mysql_query("SELECT * FROM aces_rares", $db); //alle SQL-Datensätze bzw. Zeilen der Tabelle
while($row = mysql_fetch_array($result)) {
// hier nur 1 mal das ganze Tabellengedöns rein
// zweckmäßiger Weise mit eigenem <form> und einem hidden Field für die ID s.u.
}
?>PHP-Code:mysql_query("UPDATE aces_rares SET core='$co', frame='$fr', hull='$hu', tech='$te', comp='$cp', adt='$at',
adh='$ah' WHERE id = '$id'")
or die(mysql_error());
In deinem Fall:Ich habe an mehreren Stellen etwas von Hidden-Feldern gelesen kapier das allerdings nicht
Code :1
<input type="hidden" name="id" value="<? echo $row['id'] ?>">
Gruß German
-
11.10.05 01:17 #4
Vielen Dank German, denke nun hab ichs geschnallt

Hab nur noch 1 kleines Problemchen
Ich möchte das neuste Datum aller Datensätze aus einem Timestamp-Feld ausgeben.
PHP-Code:<?php
require("connectdb.php");
$resd = mysql_db_query("items", "SELECT Letzte_dat FROM tabelle ORDER BY letzte_dat DESC LIMIT 1"); //neustes Datum
?>
<td height="93" colspan="12" class="gross"> <div align="center">
<p>Rarepart-Bestand der Aces of the Dragon</p>
<p class="tabelle">Stand vom <?php echo "$resd"; ?></p>
</div></td>Geändert von Papi62 (11.10.05 um 01:22 Uhr)
-
Jetzt kommst du schon wieder mit mysql_db_query, das war schon veraltet als ich vor 3 Jahren mit PHP anfing!PHP-Code:
<?php
require("connectdb.php");
$resd = mysql_db_query("items", "SELECT Letzte_dat FROM tabelle ORDER BY letzte_dat DESC LIMIT 1"); //neustes Datum
?>
Ich hab jetzt auch keine Lust im Manual nachzuschauen was das Ding zurück gibt, denke aber mal, dass es eine Resource ist und auf die kann man nicht einfach mit echo $resd zugreifen. Das heisst man kann schon, aber es wird nicht das gewünschte Ergebnis bringen.
Such mal im Manual nach mysql_result.Gruß German
Ähnliche Themen
-
Mehrere Formulare?
Von Gameprofi92 im Forum Borland CBuilder und VCLAntworten: 4Letzter Beitrag: 01.02.10, 14:13 -
Mehrere Button Tags -> Submit-Problem
Von Nospherates im Forum HTML & XHTMLAntworten: 8Letzter Beitrag: 17.06.07, 13:32 -
Submit-Button nach Klick auf Radio-Button aktivieren
Von altox-de im Forum PHPAntworten: 8Letzter Beitrag: 30.04.06, 16:46 -
Wert von Radio Button auf einen Submit Button weiterleiten
Von ImperatorAres im Forum Flash PlattformAntworten: 8Letzter Beitrag: 20.09.05, 07:19 -
Mehrere SUBMIT Button in ein Formular
Von Tabuk im Forum PHPAntworten: 7Letzter Beitrag: 04.05.05, 15:36





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren