我不断地遇到这个错误:
对boolean函数的成员函数bind_param()的调用*
当我们尝试对不存在的表执行操作并且prepare语句返回false时,通常会出现这种情况,但我有一个结构化表。我准备的陈述是:
$query = "INSERT INTO `profiles`(name,email,handle,DOB,profilePic,gender,r_lat,r_lon,c_lat,"
. "c_lon,connections,recentActivities,savedItems,achievements,school,"
. "interestsB,interestsI,interestsE,work,coverPic,bio,fb_url,insta_url,link_url,wordpress_url,"
. "other_url,address,range,phone)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
附言:我愿意接受所有的建议。
$stmt=$mysqli->prepare($query);
$stmt->bind_param("ssssssddddsssssssssssssssssii",$name,$email,$handle,$DOB,$profilePic,$gender,$r_lat,$r_lon,$c_lat,$c_lon,
$connections,$recentActivities,$savedItems,$achievements,$school,$interestsB,
$interestsI,$interestsE,$work,$coverPic,$bio,$fb_url,$insta_url,$link_url,$wordpress_url,
$other_url,$address,$range,$phone);
$res = $stmt->execute();
return $res;
我正在发布截图:
打印错误返回:
1064您的sql语法有错误;查看与您的mysql服务器版本对应的手册,以了解在第1行使用近距离(电话)值(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)'的正确语法
1条答案
按热度按时间0sgqnhkj1#
range
是mysql中的保留字。你可以用前引号括起来: