我有以下php代码从mysql db
中选择用户详细信息$mysql = new mysqli(DB_SERVER, DB_USER, DB_PASSWORD, DB_NAME) or die('There was a problem connecting to the database');
$stmt = $mysql->prepare('SELECT personalinfo.userid, personalinfo.firstname, personalinfo.lastname FROM personalinfo INNER JOIN applications ON personalinfo.userid = applications.userid WHERE applications.jobref = ?');
$stmt->bind_param('i',$jr);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($userID,$firstName,$lastName);
$count = $stmt->num_rows();
我已经测试了这个代码localy它工作正常,但是当我尝试在实时服务器上测试时,我不断收到以下错误 “致命错误:在C:\ path \ to \ directory”中的非对象上调用成员函数bind_param()“
提前偷看,
亚伦
任何
答案 0 :(得分:3)
嗯,根据mysqli::prepare()的文档,如果出现错误,它将返回FALSE
,这就是为什么在尝试调用{{{}时出现“非对象”错误的原因1}}因为$stmt->bind_param()
此时不是对象。
因此,为了您当前的错误和未来的任何错误,请务必在创建声明时检查是否存在错误并采取相应措施。
$stmt