Werte werden falsch übergeben

lordofscotland

Erfahrenes Mitglied
Hallo Community,

ich lasse aus einer DB Daten auslesen und lasse diese in eine Tabelle schreiben.
Die Daten werden in dieser Tabelle zum Teil in Formularelement geschrieben, da diese zur Übertragung und zum Auslesen für eine weitere Abfrage benötigt werden.

Nun habe ich das Problem, das zwar die Werte, wenn ich mir den Quelltext ansehe richtig ausgegeben werden, doch beim übergeben an das andere Script ich immer andere Werte übertragen bekomme als ich haben möchte.

Wenn z.B. die id = 7 ist übergibt das Formular eine id = 43, das ist unteranderem das Problem, denn dadurch erhalte ich falsche Werte und das soll ja nicht sein, habe mir auch die Daten in dem Script welches die diese empfängt, ausgeben lassen und es waren immer die falschen.

Die beiden Dateien hänge ich hier mit an, und hoffe das Ihr mir helfen könnt, denn langsam aber sicher sehe ich keinen Fehler mehr.

Vielen Dank für eure Hilfe.


lordofscotland
 

Anhänge

Zuletzt bearbeitet:
Schau mal hier.

Edit: Du schließt Dein Formular übrigends nicht innerhalb der while-Schleife, sondern erst, wenn alles ausgegeben wurde.

Gruß hpvw

PS: Du kannst Deinen Code auch hier posten (in den entsprechenden Code-Tags). Dann ist es für potentielle Helfer leichter, den Code anzuschauen, als ihn erst herunter zu laden, zu entpacken und zu öffnen.
 
Zuletzt bearbeitet:
Wenn ich das Formular ausserhalb der Whileschleife ausgeben lasse, zeigt es mir den Bestellbutton erst ganz am Ende der Tabelle an, setzte ich das ganze wieder in die Whileschleife, ist der Button wieder da.

Die Abfrage für das ganze samt Tabelle sieht vom Quellcode her so aus:
PHP:
<?
$a = $PHPSESSID;
include("dbconnect_inc.php");
$sql = "SELECT * FROM products WHERE artikel_id = '$art_id' order by id asc";
$res = mysql_query($sql);
$anz = mysql_num_rows($res);
while ( $z = mysql_fetch_row($res))
 {
 print "
 <tr>
  <td rowspan=8>
  <img class=nav src=../bilder/shop/klein/$z[5].jpg>\n\r
  <div align=center>Frontseite</div>
  </td>";
 if ($z[6] == "")
 print "
  <td height=200px valign='middle' width='140px' rowspan=8>Kein Bild vorhanden</td>";
 else
 print "
  <td height=200px rowspan=8>
  <img class=nav src=../bilder/shop/klein/$z[5].jpg>\n\r
  <div align=center>R&uuml;ckseite</div></td>
 </tr>";
 print "
  </tr>
  <form method='get' action='korb_ein.php'>
  <tr>
  <td valign=top><b>Artikelnummer</b></td>
  <td valign=top><input type='Text' name='artnr' value='$z[2]' class=nummer readonly></td>
  </tr>
  <tr>
  <td valign=top><b>Beschreibung</b></td>
  <td valign=top><b>$z[3]<br>$z[4]</b></td>
  </tr>
  <tr>
  <td valign=top><b>Color</b></td>
  <td valign=top><b>$z[8]</b></td>
  </tr>
  <tr>
  <td valign=top><b>Preis</b></td>";
  printf ("<td valign=top><b>%.2f&nbsp;Euro</b></td>", $su = $z[7]);
  print"
  </tr>
  <tr>
  <td><b>verf&uuml;gbare Gr&ouml;&szlig;en</b>
  <td><b>$z[9]</b></td>
  </tr>
  <tr>
  <td><b>Gr&ouml;&szlig;e</b></td>
  <td><input type='Text' name='groesse' value='$z[9]' class='front'></td>
  </tr>
  <tr>
  <td><b>Anzahl</b></td>
  <td><input value='1' maxlength='2' type='Text' name='anzahl' class='front'></td>
  </tr>
  <tr>
  <td><input type='hidden' name='art_nr' value='$z[2]'></td>
  <td><input type='hidden' name='id' value='$z[0]'></td>
  </tr>
  <tr>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td align=left>
  <input type=Submit name='kaufen' value='Jetzt Kaufen'>
  </td></tr>";
 }
 print"
  <tr>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  </tr>
</table>";
?>

Wo jetzt $z[0] steht, steht im Quellcode der Seite dann immer die richtige ID nur beim Übergeben an das Script auf der nächsten Seite kommt eine falsche ID an.

Vielen Dank im Voraus
 
Habe den Fehler gefunden. Hier der Quellcode zum vergleichen.

PHP:
<?
$a = $PHPSESSID;
include("dbconnect_inc.php");
$sql = "SELECT * FROM products WHERE artikel_id = '$art_id' order by id asc";
$res = mysql_query($sql);
$anz = mysql_num_rows($res);
while ( $z = mysql_fetch_row($res))
 {
 print "
 <form method='get' action='korb_ein.php'>
 <tr>
  <td rowspan=8>
  <img class=nav src=../bilder/shop/klein/$z[5].jpg>\n\r
  <div align=center>Frontseite</div>
  </td>";
 if ($z[6] == "")
 print "
  <td height=200px valign='middle' width='140px' rowspan=8>Kein Bild vorhanden</td>";
 else
 print "
  <td height=200px rowspan=8>
  <img class=nav src=../bilder/shop/klein/$z[5].jpg>\n\r
  <div align=center>R&uuml;ckseite</div></td>
 </tr>";
 print "
  </tr>
  <tr>
  <td valign=top><b>Artikelnummer</b></td>
  <td valign=top><input type='Text' name='art_nr' value='$z[2]' class='nummer' readonly></td>
  </tr>
  <tr>
  <td valign=top><b>Beschreibung</b></td>
  <td valign=top><b>$z[3]<br>$z[4]</b></td>
  </tr>
  <tr>
  <td valign=top><b>Color</b></td>
  <td valign=top><b>$z[8]</b></td>
  </tr>
  <tr>
  <td valign=top><b>Preis</b></td>";
  printf ("<td valign=top><b>%.2f&nbsp;Euro</b></td>", $su = $z[7]);
  print"
  </tr>
  <tr>
  <td><b>verf&uuml;gbare Gr&ouml;&szlig;en</b>
  <td><b>$z[9]</b></td>
  </tr>
  <tr>
  <td><b>Gr&ouml;&szlig;e</b></td>
  <td><input type='Text' name='groesse' value='$z[9]' class='front'></td>
  </tr>
  <tr>
  <td><b>Anzahl</b></td>
  <td><input value='1' maxlength='2' type='Text' name='anzahl' class='front'></td>
  </tr>
  <tr>
  <td>&nbsp;</td>
  <td><input type='hidden' name='id' value='$z[0]'></td>
  </tr>
  <tr>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td align=left>
  <input type=Submit name='kaufen' value='Jetzt Kaufen'>
  </td></tr></form>";
 }
 print"
  <tr>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  </tr>
</table>";
?>

Danke an alle die geholfen haben.

Lordofscotland
 
Zurück