Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将facebook数据存储到mysql_Mysql_Facebook_User Data - Fatal编程技术网

将facebook数据存储到mysql

将facebook数据存储到mysql,mysql,facebook,user-data,Mysql,Facebook,User Data,可能重复: 我正在使用Facebook Javascript SDK登录并获取用户信息。当我将此数据保存到mysql数据库时,它只保存1-2条记录。而我每次都会得到用户记录 if($user){ print_r($userInfo); $userid = $userInfo[id]; $username = $userInfo[name]; $birthday = $

可能重复:

我正在使用Facebook Javascript SDK登录并获取用户信息。当我将此数据保存到mysql数据库时,它只保存1-2条记录。而我每次都会得到用户记录

if($user){
                print_r($userInfo);
                $userid = $userInfo[id];
                $username = $userInfo[name];
                $birthday = $userInfo[birthday];
                $birthday = date("Y-m-d", strtotime($birthday));
                $userlocation = $userInfo[location][name];
                $gender = $userInfo[gender];
                $useremail = $userInfo[email];
                $sql = "INSERT INTO users (userid, username, useremail, birthday, location, gender) VALUES ('$userid', '$username', '$useremail', '$birthday', '$userlocation', '$gender')";
                if($result = mysql_query($sql)) {
                    echo "success";
                }
            }
用户的表def为:

1   userid  int(20)         No  None          Change      Drop    Browse distinct values     Primary      Unique      Index  Spatial     Fulltext
 2  username    varchar(30) latin1_swedish_ci       No  None          Change      Drop    Browse distinct values      Primary     Unique      Index  Spatial      Fulltext
 3  useremail   varchar(50) latin1_swedish_ci       No  None          Change      Drop    Browse distinct values      Primary     Unique      Index  Spatial      Fulltext
 4  birthday    date            No  None          Change      Drop    Browse distinct values      Primary     Unique      Index  Spatial     Fulltext
 5  location    varchar(30) latin1_swedish_ci       No  None          Change      Drop    Browse distinct values      Primary     Unique      Index  Spatial      Fulltext
 6  gender  varchar(10) latin1_swedish_ci       No  None          Change      Drop    Browse distinct values      Primary     Unique      Index  Spatial      Fulltext
使用PDO时:

if($user){
                $host = "internal-db.s130813.gridserver.com";
                $db = "db130813_fbmooz";
                $user = "db130813_adminu";
                $pass = "ansari786";
                $conn = new PDO("mysql:host=$host;dbname=$db",$user,$pass);
                $uid = $userInfo[id];
                $uname = $userInfo[name];
                $sql = "INSERT INTO users (userid,username) VALUES (:uid,:uname)";
                $q = $conn->prepare($sql);
                $q->execute(array(':uid'=>$uid, ':uname'=>$uname));

仍然无法保存

我想到了一些想法:

  • 使用PDO重写此命令-“mysql_query”fn已被弃用
  • 使用准备好的语句和“mysql\u real\u escape\u string”确保值没有任何坏字符
  • 检查返回值并使用“mysql_error()”查看是否出现问题

    • 我想到了一些想法:

      • 使用PDO重写此命令-“mysql_query”fn已被弃用
      • 使用准备好的语句和“mysql\u real\u escape\u string”确保值没有任何坏字符
      • 检查返回值并使用“mysql_error()”查看是否出现问题

      您希望获得多少条记录?取决于用户,可能会有数百条记录,因此这段代码会被重复调用?我猜我不知道应该在哪里插入这么多记录。每次新用户通过FB id登录时,都会执行此代码,稍后我会在数据库中检查FB id,但目前我预计至少有20-25条记录。您在“print\u r”行看到的值/点击数是否与您预期的一样多,但没有调用INSERT?或者这段代码没有被调用?我想我不知道这是一个更大的代码问题还是一个mysql问题。你希望得到多少记录?取决于用户,可能会达到几百条,所以这段代码会被重复调用?我猜我不知道应该在哪里插入这么多记录。每次新用户通过FB id登录时,都会执行此代码,稍后我会在数据库中检查FB id,但目前我预计至少有20-25条记录。您在“print\u r”行看到的值/点击数是否与您预期的一样多,但没有调用INSERT?或者这段代码没有被调用?我想我不知道这是更大的代码问题还是mysql问题。