我推送到一个根据提供的信息创建用户帐户的数据库。某些信息仅基于其他字段,例如:
如果$ _POST ['radio1']等于'other',$ _ POST ['input3']只会被推送到数据库。如果没有,请将空字符串推送到数据库(不管其值是什么,都不要推送input3的值)。
我的bindParam如下:
$user->bindParam(':input3', ($_POST['radio1'] == 'other')?$_POST['input3']:'');
不幸的是,我收到以下错误:无法通过引用传递参数2 。
在过去,我将条件IF从函数中取出,并且只是有两个不同的条件,其中原始值或空值将被绑定,但我想知道是否可以将条件直接放入函数调用。
答案 0 :(得分:2)
bindParam()
接受对变量的引用,因此您无法传递表达式。
如果你想以这种方式使用它(我不推荐,请参阅注释) - 然后使用bindValue()
代替表达式。