-3

我正在尝试将其存储在数据库中,但它不起作用。有一个更好的方法吗?它正在获取用户会话,但不会将数据插入数据库。

if($user)
{   
    $user_interest = $facebook->api('/me/interests');   

    for($i = 0; $i < sizeof($user_interest[data]); $i++) 
    {
        $name = $user_interest[data][$i]['name'];
        $category = $user_interest[data][$i]['category'];
        $categoryId = $user_interest[data][$i]['id'];
        $created_time = $user_interest[data][$i]['created_time'];

        $strsql = "INSERT INTO `interests`(`fbId`,`categoryId`,`category`,`name`,`created_time`) 
                   VALUES(\"$fbId\",\"$categoryId\",\"$category\",\"$name\",\"$created_time\")";
        mysql_query($strsql, $connect) or die(mysql_error());
        $chkrow1 = mysql_affected_rows($connect);
    }
4

1 回答 1

2
"INSERT INTO `interests`(`fbId`,`categoryId`,`category`,`name`,`created_time`)
 VALUES(\"$fbId\",\"$categoryId\",\"$category\",\"$name\",\"$created_time\")";

MySQL(和其他 SQL)中的字符串使用单引号。

"INSERT INTO `interests`(`fbId`,`categoryId`,`category`,`name`,`created_time`)
 VALUES('$fbId', '$categoryId', '$category', '$name', '$created_time')";

此外,在插值之前使用转义所有这些值mysql_real_escape_string,然后停止使用已弃用的mysql_扩展并使用 PDO 的参数化查询。

于 2013-06-26T13:41:03.003 回答