我在PHP上有这个查询:
mysql_query("UPDATE ead_modulos SET slides = slides - 1 WHERE id_modulo = '$id_modulo';");
每次我运行它时,它会从幻灯片中减去2,所以如果我有2张幻灯片并且我运行此代码一次,它将以0张幻灯片结束。
我在此查询中添加了一个输出,以检查它是否正在执行2次,而不是,代码运行一次并减去2,任何人都可以帮忙吗?
编辑:我有这个其他查询,在添加幻灯片时效果很好。
mysql_query("UPDATE ead_modulos SET slides = slides + 1 WHERE id_modulo = '$id_modulo'");
edit2:我在一个只有数据库连接的空白页面上尝试了查询,它运行得很好,所以问题是,代码运行了2次,我完全不知道为什么会这样做,当我添加幻灯片,它工作正常,当我删除幻灯片时,它就像页面加载两次并执行代码两次。
答案 0 :(得分:0)
我同意你的代码必须运行两次。仔细检查它,并在此代码下面设置一个回显来发出消息,看看是否有两次。
答案 1 :(得分:0)
是的,您的代码可能会运行两次。要进行测试,请将查询更改为+,并查看在运行代码时是否会添加两个。
mysql_query(“UPDATE ead_modulos SET slides = slides - 1 WHERE id_modulo ='$ id_modulo';“);
到
mysql_query(“UPDATE ead_modulos SET slides = slides + 1 WHERE id_modulo ='$ id_modulo';“);
仅供测试..
也试试这个:
mysql_query("UPDATE ead_modulos SET slides = slides - 1 WHERE id_modulo = '$id_modulo';");
exit();