PHP:String不会插入MySQL数据库

时间:2014-01-08 17:57:36

标签: php mysql sql

我的字符串字段不会插入我的数据库。

(列follower_username和following_username,它们是VARCHAR(200)不插入) :跟随者和以下列值插入工作。

mysql_query("INSERT INTO `follow` (`follower`, `following`, `follower_username`, `following_username`) VALUES ('".$userid."', '".$get_user_id."', '".$username."', '".$get_user."')");

的字符串:

$get_user = mysql_real_escape_string($row['username']);
$get_user_id = (int)mysql_real_escape_string($row['id']);
$userid = (int)mysql_real_escape_string($user_data['id']);
$username = mysql_real_escape_string($user_data['username']);

我不知道该怎么做,无论是PHP还是数据库本身:S

提前致谢:)

5 个答案:

答案 0 :(得分:1)

试试这个:

mysql_query("INSERT INTO follow (`follower`, `following`, `follower_username`, `following_username`) VALUES ('".$userid."', '".$get_user_id."', '".$username."', '".$get_user."')");

不要在表名周围使用单引号。

答案 1 :(得分:1)

您可以尝试在mysql_query之前回显mysql语句,即

echo "INSERT INTO `follow` (`follower`, `following`, `follower_username`, `following_username`) VALUES ('".$userid."', '".$get_user_id."', '".$username."', '".$get_user."')";

并检查字符串是否符合您的预期。如果它符合您的预期,请尝试手动复制字符串并将其粘贴到mysql控制台中,看看是否发生任何错误。

答案 2 :(得分:0)

尝试在您的语句中添加mysql_error以找出错误,以便您可以修复它:

mysql_query("INSERT INTO `follow` (`follower`, `following`, `follower_username`,
`following_username`) VALUES ('".$userid."', '".$get_user_id."', '".$username."',   
'".$get_user."')") or die (mysql_error());

答案 3 :(得分:0)

对于调试和简单工作,我建议您将SQL查询存储在变量中。

$query  = "INSERT INTO `follow` (`follower`, `following`, `follower_username`, `following_username`) VALUES ('".$userid."', '".$get_user_id."', '".$username."', '".$get_user."')";
echo "DEBUG:".$query;
mysql_query($query);

答案 4 :(得分:0)

试试这个:

 $objQuery = mysql_query("INSERT INTO `follow` (`follower`, `following`, `follower_username`,
    `following_username`) VALUES ($userid, $get_user_id, '".$username."',   
    '".$get_user."')") or die (mysql_error());

if(!$objQuery){
 echo "something went wrong!";
}