我有几个更新语句需要在单击提交时运行。我可以运行单个更新,但我很难弄清楚如何在刷新页面之前运行所有更新。这是我尝试过的方法,但在关闭连接时出现错误,而在运行单个语句时并未发生该错误。
if ($conn->query($usqlMC) == True) {
if ($conn->query($usqlSCn) == True) {
if ($conn->query($usqlSCv) == True) {
if ($conn->query($usqlTn) == True) {
if ($conn->query($usqlTurl) == True) {
if ($conn->query($usqlTv) == True) {
header("location: http://localhost/phpkiosk/mc1.php");
}
}
}
}
}
}
我确信这是完全错误的,因此任何有关如何解决此问题的建议将不胜感激。谢谢!!!
添加错误消息
Parse error: syntax error, unexpected end of file in C:\wamp2\www\phpKiosk\mc1.php on line 1196
当我运行时,我再次没有收到错误:
if ($conn->query($usqlMC) == True) {
header("location: http://localhost/phpkiosk/mc1.php");
}
工作解决方案
根据 Chris85 的建议,我能够让它发挥作用:
if ($conn->query($usqlMC) === TRUE &&
$conn->query($usqlSCn) ===TRUE &&
$conn->query($usqlSCv) ===TRUE &&
$conn->query($usqlTn) ===TRUE &&
$conn->query($usqlTurl) ===TRUE &&
$conn->query($usqlTv) ===TRUE) {
header("location: http://localhost/phpkiosk/mc1.php");
}
}
最佳答案
除非您需要单独的检查,否则更容易将所有条件保留在一个 if
中,这也简化了控制 block 的打开和关闭。
所以这个:
if ($conn->query($usqlMC) == True &&
$conn->query($usqlSCn) == True &&
$conn->query($usqlSCv) == True &&
$conn->query($usqlTn) == True &&
$conn->query($usqlTurl) == True &&
$conn->query($usqlTv) == True) {
header("location: http://localhost/phpkiosk/mc1.php");
}
应该为您执行相同的操作,但只需要一个控制 block 。
还有
unexpected end of file
错误永远不相信行号。这只是文件结束的地方,而不是错误所在的地方。 PHP 无法知道应该在哪里关闭 block 。
例如:
<?php
if (1==1) {
echo 'this is true';
echo 'I also want to do this';
echo 'I meant to close here';
echo 'code done';
会在第 6 行抛出错误,但错误实际上是在第 4/5 行,我未能关闭 if
。
关于php - 提交时运行多个 SQL UPDATE 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35106087/