Обновление количества корзины в php со ссылкой - PullRequest
0 голосов
/ 14 декабря 2011

Я хочу использовать ссылки (якоря) для обновления корзины покупок, а не кнопки, например:

<a href="shoppingcart.php?command=update&product<?=$id?>=<?=$q?>">update</a>

однако это не обновляет мою корзину. Как я могу заставить это работать?

Мой заголовок:

if($_REQUEST['command']=='add' && $_REQUEST['id']>0){
    $id=$_REQUEST['id'];
    sepetle($id,1);
}        
else if($_REQUEST['command']=='delete' && $_REQUEST['id']>0){
    remove_product($_REQUEST['id']);
}
else if($_REQUEST['command']=='clear'){
    unset($_SESSION['cart']);
}
else if($_REQUEST['command']=='update'){
    $max=count($_SESSION['cart']);
    for($i=0;$i<$max;$i++){
        $id=$_SESSION['cart'][$i]['productid'];
        $q=intval($_REQUEST['product'.$id]);
        if($q>0 && $q<=999){
            $_SESSION['cart'][$i]['qty']=$q;
        }
    }
}

Мой HTML-код:

if(is_array($_SESSION['cart'])){
    echo '<tr bgcolor="#FFFFFF" style="font-weight:bold"><td>Serial</td><td>Name</td><td>Price</td><td>Qty</td><td>Amount</td><td>Options</td></tr>';
    $max=count($_SESSION['cart']);
    for($i=0;$i<$max;$i++){
        $id=$_SESSION['cart'][$i]['productid'];
        $q=$_SESSION['cart'][$i]['qty'];
        $pname=get_product_name($id);
        if($q==0) continue;
    }
}

Мои ссылки:

<a href="shoppingcart.php?command=clear&id=<?=$id?>">Clear</a>
<a href="shoppingcart.php?command=update&product<?=$id?>=<?=$q?>">update</a>

Мой стол:

<tr bgcolor="#FFFFFF"><td><?=$i+1?></td><td><?=$pname?></td>
    <td>$ <?=get_price($id)?></td>
    <td><input type="text" name="product<?=$id?>" value="<?=$q?>" maxlength="3" size="2" /></td>                    
    <td>$ <?=get_price($id)*$q?></td>
    <td> <a href="shoppingcart.php?command=delete&id=<?=$id?>">Remove</a></td>
</tr>

Ответы [ 2 ]

0 голосов
/ 14 декабря 2011

Если в вашей корзине ничего нет, переменная $max будет нулевой, не так ли?Таким образом, цикл for не будет запущен и ничего не будет добавлено в вашу корзину.Это поможет увидеть URL-адреса, которые создает ваш код, а также любые выходные данные отладки.

0 голосов
/ 14 декабря 2011

Проблема в вашем коде - это URL, вы не должны заключать переменные в <?php ?>, все, что вам нужно, это просто поместить вашу переменную в '. ... .', например:

<a href="shoppingcart.php?command=update&product='.$id.'">update</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...