Php 使用一个链接执行两个操作时出现问题
我正在用php制作一个简单的购物车程序。 下面的代码所做的是更新当前页面,以便购买的产品数量将归零。然后我尝试将它链接到另一个页面,该页面执行另一个操作(更新数据库)。 对于我编写的这段实验代码,我能做些什么:Php 使用一个链接执行两个操作时出现问题,php,mysql,Php,Mysql,我正在用php制作一个简单的购物车程序。 下面的代码所做的是更新当前页面,以便购买的产品数量将归零。然后我尝试将它链接到另一个页面,该页面执行另一个操作(更新数据库)。 对于我编写的这段实验代码,我能做些什么: echo "<td> <a href=\"$_SERVER[PHP_SELF]?action=zeroline&id=$product_id&commitbuy.php?ids=$id&qoh=$qtyhand&qtb=$quan
echo "<td>
<a href=\"$_SERVER[PHP_SELF]?action=zeroline&id=$product_id&commitbuy.php?ids=$id&qoh=$qtyhand&qtb=$quantity\">
<img src=\"http://localhost/onlinestore/img/system/accept-icon.png\"></img></a>
</td>";
echo”
";
更新当前页面的部分似乎正在工作,但更新数据库的部分不工作。
如您所见,我只是将这2个(PHP_SELF,即viewcart.PHP,然后是commitbuy.PHP)与一个符号链接在一起
我是否应该将更新的代码放在viewcart.php中?
正确的方法是什么。您应该查看web服务器的日志,您将看到只进行了一次调用,它包含整个
href
符号用于分隔URL中的查询字符串参数,而不是分隔多个URL,因此它可以一次性从客户端发送
至少有两个原因让你不想打两个电话:用户体验——打两个电话可能需要更长的时间;可靠性——如果数据库更新失败怎么办
您知道该模型吗?是的,除非您使用Ajax同时向服务器发送两个不同的请求(并且有充分的理由),否则您应该在后端PHP中处理一个操作的所有相关业务逻辑。即使使用Ajax,我也无法想象逻辑需要多于一个请求,在成功时使用Javascript/jQuery将接口中的数量更新为零 正如@martin之前提到的,在确信第一个动作确实成功之前,您不想触发第二个依赖动作