Guten Tag,
ich will es gleich von vorne rein sagen, bin nicht so fit was Mehrdimensionale arrays angeht![Traurig :( :(](/forum/styles/smilies/frown.gif)
Folgendes Problem:
Ich Generiere aus der Datenbank eine Liste (Warenkorb) per "while" Schleife, da stehen dann Werte wie:
ID->Menge->Preis drin.
Nun will ich wenn jemand die Menge ändert das er das auch übernimmt.
Das ist das Formular:
Das Funktioniert auch super, doch wenn ich nun das Formular abschicke wird immer die erste ID nur geändert ( Oder alle erhalten den gleichen Mengen Wert )
Alle Daten werden als array abgeschickt
Das sagt print_r:
Doch wie bekomme ich das so hin das zum Beispiel:
ID => 1 quantity => 5 geupdatet wird?
Die anderen Werte sollen natürlich auch gleich per update eingespeist werden.
Also kurz:
Wie führe ich die array zusammen für einen mysql update, dass ich einfach einen Update Befehl ausführen kann:
Also alle Daten aus dem array lesen mache ich bis jetzt immer so ( wenn es nur ein array gibt)
Das nehme ich auch um Artikel aus dem Warenkorb zu löschen.
Klappt auch wunderbar.
Dann ist da noch eine Zweite Sache:
Ich muss die Menge * Preis nehmen, diese wird dann auch in cartitem gespeichert!
Hoffe einer versteht was ich machen will?![Lächeln :) :)](/forum/styles/smilies/smile.gif)
Über Anregungen und Vorschläge wäre ich sehr dankbar!
ich will es gleich von vorne rein sagen, bin nicht so fit was Mehrdimensionale arrays angeht
![Traurig :( :(](/forum/styles/smilies/frown.gif)
Folgendes Problem:
Ich Generiere aus der Datenbank eine Liste (Warenkorb) per "while" Schleife, da stehen dann Werte wie:
ID->Menge->Preis drin.
Nun will ich wenn jemand die Menge ändert das er das auch übernimmt.
Das ist das Formular:
PHP:
while($row = mysql_fetch_array($product_details))
{
$id = mysql_real_escape_string($row['id']);
$image = mysql_real_escape_string($row['product_image']);
$product_id = mysql_real_escape_string($row['product_id']);
$product_title =mysql_real_escape_string($row['product_title']);
$price = mysql_real_escape_string($row['product_price']);
$menge = mysql_real_escape_string($row['quantity']);
$supprice = $menge * $price;
echo '<tr valign="top"><td width="400"><table border="0" width="100%" cellspacing="0" cellpadding="0" class="productListing">
<tr>
<td align="center" class="productListing-heading" width="50">Löschen</td>
<td class="productListing-heading" width="80" align="left">Produkt(e)</td>
<td class="productListing-heading" width="230" align="left">Produkt Titel</td>
<td align="center" class="productListing-heading" width="40">Menge.</td>
<td align="right" class="productListing-heading" width="40">Total</td>
</tr>
<tr class="productListing-even">
<td align="center" class="productListing-data" valign="top"><input type="checkbox" name="cart_delete[]" value="'.$id.'"></td>
<td class="productListing-data"><table border="0" cellspacing="0" cellpadding="0">
<tr><td class="productListing-data" style="padding-left:0px" align="center"><a href="product_info.php?products_id='.$product_id.'">
<img src="image.php?w=70&img=images/artikel/'.$image.'" border="0" alt="'.$product_title.'" title="'.$product_title.'" class=image_border></a>
</td></tr></table></td><td class="productListing-data" valign="top"><b>'.$product_title.'</b><br></td>
<input type="hidden" name="id[]" value="'.$id.'">
<td align="center" class="productListing-data" valign="top"><input type="text" name="quantity[]" value="'.$menge.'" size="3">
<input type="hidden" name="price[]" value="'.$price.'"></td>
<td align="right" class="productListing-data" valign="top"><b>'.$supprice.'€</b></td>
</tr></table></td></tr>';
}
Das Funktioniert auch super, doch wenn ich nun das Formular abschicke wird immer die erste ID nur geändert ( Oder alle erhalten den gleichen Mengen Wert )
Alle Daten werden als array abgeschickt
Das sagt print_r:
PHP:
Array ( [id] => Array ( [0] => 126 [1] => 124 [2] => 125 ) [quantity] => Array ( [0] => 1 [1]
=> 1 [2] => 1 ) [price] => Array ( [0] => 4.99 [1] => 4.99 [2] => 4.99 ) [update_cart_x] =>
61 [update_cart_y] => 3 [update_cart] => updatecart )
Doch wie bekomme ich das so hin das zum Beispiel:
ID => 1 quantity => 5 geupdatet wird?
Die anderen Werte sollen natürlich auch gleich per update eingespeist werden.
Also kurz:
Wie führe ich die array zusammen für einen mysql update, dass ich einfach einen Update Befehl ausführen kann:
PHP:
//Beispiel
mysql_query("UPDATE cartitem SET `quantity` ='$menge' WHERE id ='$id' ") or mysql_error();
Also alle Daten aus dem array lesen mache ich bis jetzt immer so ( wenn es nur ein array gibt)
PHP:
for ($i=0; $i<count($id); $i++)
{
$id_array = $id[$i];
//zeigt alle id´s
echo $id_array;
}
Das nehme ich auch um Artikel aus dem Warenkorb zu löschen.
Klappt auch wunderbar.
Dann ist da noch eine Zweite Sache:
Ich muss die Menge * Preis nehmen, diese wird dann auch in cartitem gespeichert!
Hoffe einer versteht was ich machen will?
![Lächeln :) :)](/forum/styles/smilies/smile.gif)
Über Anregungen und Vorschläge wäre ich sehr dankbar!
Zuletzt bearbeitet: