Подправить корзину

Runapa

Постоялец
Регистрация
30 Окт 2010
Сообщения
63
Реакции
5
Делаю корзину товаров на php и столкнулся с проблемой - не получается редактировать количества товаров.

Для вывода используется цикл for, но из за этого можно редактировать только последний добавленный товар, а нужно чтобы работало целиком. Как бы это сделать ?


Вывод корзины:

PHP:
      if ($_SESSION['prod_count']!=0)
        {                             
            for ($i=0; $i<$_SESSION['prod_count']; $i++)
            {
                $q="SELECT * FROM katalog WHERE id='".$_SESSION['product_id'][$i]."'";
                $query=mysql_query($q);
              $prod_in_cart=mysql_fetch_assoc($query);
?> 
            <tr>
            <td>
                <?php echo "<img src='".$prod_in_cart['thumb']."' width='120px' height='120px'>";?>
            </td>
            <td>
                <?php echo $prod_in_cart['name'];?>
            </td>
            <td>
                <?php echo $_SESSION['product_size'][$i];?>
            </td>
            <td>
                Количество: <input type="text" size="3" value="<?php echo $_SESSION['product_count'][$i];?>" name="p_count">
            </td>
            <td>
            <?php echo $_SESSION['product_price'][$i]* $_SESSION['product_count'][$i];?> EUR
            </td>
            <td>
                <input type="hidden" value="<?php echo $i;?>" name="upd_id">
                <input type="image" src="./img/refresh.png" width="26" height="26" value="">
                </form>
            </td>
            <td>
                <form action="<?php echo $_SERVER['REQUEST_URI']?>" method="POST">
                    <input type="hidden" value="<?php echo $i;?>" name="del_id" >
                    <input type="image" src="./img/trash.png" width="26" height="26" value="">
                </form>
            </td>
        </tr>
                     
<?
     
            }            ?>
        </table>

Функция редактирования:

PHP:
//Если нужно изменить количество товара:
if (isset($_POST['upd_id'])) {
update_cart($_POST['p_count'], $_POST['upd_id']);
}
 
попробуйте код на ошибки проверить т.к. в вашем коде отсутствует параметр будет выглядеть примерно так

PHP:
....
            <td>
                <?php echo $_SESSION['product_size'][$i];?>
            </td>
            <td><form action="<?php echo $_SERVER['REQUEST_URI']?>" method="POST">
 
                Количество: <input type="text" size="3" value="<?php echo $_SESSION['product_count'][$i];?>" name="p_count">
            </td>
            <td>
....
 
загляните сюда Для просмотра ссылки Войди или Зарегистрируйся как раз нечто подобное обсуждалось...
и да... разберитесь с <form></form> во первых нет начала основной формы, во вторых она в цикле, я бы вынес её за пределы цикла, хотя все зависит от того что вы собираетесь с ней делать...
 
Назад
Сверху