与数据库的连接似乎成功,但INSERT INTO不发送任何数据

时间:2014-09-25 16:29:52

标签: php mysql sql

我试图将一些数据插入本地计算机上的数据库中。

我打开了连接,并为我需要的字段执行了INSERT INTO。没有任何东西出现在数据库中,但我真的输了,因为我没有得到任何错误,所以没有指导它失败的地方。我尝试将其缩小并添加echo变量来检查脚本运行的程度,但它一直运行到最后。

要开始我设置密码和用户名,这只是我当地的东西:

// configuration
$dbuser     = "root";
$dbpass     = "";

然后我创建了连接

// Create connection
$con=mysqli_connect("localhost",$dbuser,$dbpass,"survey");

因为我正在努力找出它倒下的地方,所以我附上了一个错误陈述。目前它会输出'successfully connected',因此它无法连接......

// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}else{
    echo 'successfully connected';
}

然后我准备SQL INSERT INTO

// the SQL insert
mysqli_query($con,"INSERT INTO mytablename (MostImportantFeatures,ImportanceOfFreeDelivery)
VALUES ($features,$importance_free_delivery)");
mysqli_close($con);

我一无所获。没有错误,但没有提交到数据库。我无法解决我出错的地方或者如何在脚本运行时调试它。我可以使用上面的详细信息登录数据库(使用Sequel Pro)。

您将如何开始调试?

1 个答案:

答案 0 :(得分:0)

要开始调试,您可能想检查是否从mysqli_query返回TRUEFALSE,并检查错误的最后一个错误。

if(!mysqli_query($con,"INSERT INTO mytablename (MostImportantFeatures,ImportanceOfFreeDelivery) VALUES ($features,$importance_free_delivery)")) {
    echo mysqli_error($con);
}

mysqli_query docs - php.net

mysqli_query docs - php.net