Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Problem z pętlą while
Forum PHP.pl > Forum > Przedszkole
krysob
Witajcie, mam problem z petlą while, wyswietlam tabelkę z możliwością edytowania konkretnego wiersza, po wpisaniu wartosci i kliknięciu przycisku powinien wysyłać id wybranego wiesza w tabeli (który ma uaktualnić). Zaś wysyła w każdym wierszu ostatni id wiersza w tabeli, to jakiś musi być głupi bląd ale ja nie mogę sobie z nim poradzić więc proszę o pomoc.

Z góry dziękuje za każdą podpowiedz

CODE
<?php
include 'config.php';
db_connect();

check_login();

$pagetitle = 'Koszyk';
require_once ('templates/userheader.html');

if (isset($_POST['changepieces'])) {
$cart_id = $_POST['cart_id'];
$product_pieces = $_POST['product_pieces'];
echo '<p>Zmieniles ilosc wybranego produktu w koszyku !</p>';
mysql_query("UPDATE `carts` SET product_pieces = '{$_POST['product_pieces']}' WHERE cart_id = '{$_POST['cart_id']}'") or die("blad");
}
echo '<table align="center" border="1" width="500px">
<h2>Twój koszyk</h2>
<tr>
<th>Nazwa</th>
<th>Cena</th>
<th>Ilosc</th>
<th>Zmien</th>
</tr>';

$result = mysql_query("SELECT * FROM `carts` WHERE `user_id` = '{$_SESSION['user_id']}'");
while($row = mysql_fetch_assoc($result)) {
echo '<tr>
<td><b>'.$row['product_name'].'</b></td>
<td>'.$row['product_price'].'zł</td>
<td>'.$row['product_pieces'].'szt</td>
<td><form method="post" action="'.$_SERVER['PHP_SELF'].'">
<input type="text" id="product_pieces" name="product_pieces" size="2" value="" />
<input type="hidden" id="cart_id" name="cart_id" value="'.$row['cart_id'].'" />
<input type="submit" value="Zmien ilosc" name="changepieces" /></td>
</tr> ';
}
db_close();
?>
_Borys_
Coś takiego powinno być
  1. <input type="text" id="product_pieces" name="product_pieces[]" size="2" value="" />
  2. <input type="hidden" id="cart_id" name="cart_id[]" value="'.$row['cart_id'].'" />

Wtedy masz w tablicy wszystko co wpisałeś i musisz zmienić zapytanie zmiany do bazy, albo w pętli albo inaczej.
krysob
Chyba z tym sobie nie poradze, próbuje zmienić cos w zapytaniu i nic nie działa jak powinno

CODE
if (isset($_POST['changepieces'])) {
$cart_id = cart_id[$_POST('cart_id')];
$product_pieces = $_POST['product_pieces'];
echo '<p>Zmieniles ilosc wybranego produktu w koszyku !</p>';
mysql_query("UPDATE `carts` SET product_pieces = '{$_POST['product_pieces']}' WHERE cart_id = '{$cart_id}'") or die("blad");
}


wyrzuca błąd, z góry dziękuje za podpowiedz.
nospor
Wyswietlaj blad zapytania a nie nic nie mowiacy napis blad....
mysql_query("UPDATE `carts` SET product_pieces = '{$_POST['product_pieces']}' WHERE cart_id = '{$cart_id}'") or die(mysql_error());
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.