-8

所以我有这两个存储过程。第一个工作正常,但第二个不会。它仍然执行第一个。我尝试注释掉除第二个存储过程之外的其他内容,它工作正常。我在这里做错了什么?

if($view='group'){
$sql = "CALL sp_edit_biochem_group('$item_group_ID','$item_group_code','$item_group_desc','$item_group_qty','$uom','$location','$inv_by','$as_of_date')";
}
elseif ($view='breakdown'){
$sql = "CALL sp_edit_biochem_breakdown('$status','$as_of_date','$serial_no','$item_breakdown_ID')";
}
4

3 回答 3

2

您正在使用赋值运算符=而不是比较运算符==

于 2013-08-28T15:37:49.950 回答
2

您正在使用赋值运算符 ( =) 而不是相等运算符 ( ==)。尝试:

if($view=='group'){
    $sql = "CALL sp_edit_biochem_group('$item_group_ID','$item_group_code','$item_group_desc','$item_group_qty','$uom','$location','$inv_by','$as_of_date')";
}
elseif ($view=='breakdown'){
    $sql = "CALL sp_edit_biochem_breakdown('$status','$as_of_date','$serial_no','$item_breakdown_ID')";
}
于 2013-08-28T15:38:01.607 回答
2

这正是推荐使用的原因:

if ('group' == $view) {

如果您犯了与您所做的错误一样的错误(使用=代替==),您的代码将如下所示:

if ('group' = $view) {

您将收到一个致命错误,并立即通知 + 解决问题。

于 2013-08-28T15:40:03.200 回答