我正在facebook上运行一个应用程序,但是从表中获取数据似乎存在问题,表中包含了在索引页面中添加的数据,我需要在其他地方访问它,问题是,查询不起作用,在这里,我打开表以查看用户是否存在,如果用户没有,那么我稍后再添加它们:
$fb_id=$userdata['id'];
$querya="SELECT * FROM user_info WHERE user_info.fb_id='$fb_id'";
$result1=mysql_query($querya);
if(mysql_num_rows($result1)==0){
//add user to table, as they don't exist
}
上面可能出现什么问题? userdata ['id']确实有数据,我打印出来并显示用户的脸书ID,为什么没有发生任何事情?提前谢谢。
答案 0 :(得分:1)
我的猜测是你使用INT列而不是BIGINT或VARCHAR。 Facebook ID太长,无法容纳传统的32位INT列。如果你改变你的表结构以使用BIGINT或VARCHAR(如果你要进行这样的查找,请确保索引列),你应该是好的。
答案 1 :(得分:0)
错误是查询语法,在单引号内使用变量将变量作为字符串而不是变量返回 查询应为:
$querya="SELECT * FROM user_info WHERE user_info.fb_id='".$fb_id."'";