PHP脚本不将数据插入数据库

时间:2014-11-10 15:11:24

标签: php mysql sql database

我无法插入到我的数据库中,我已经测试了数据库上的$ sql并且它插入没有问题,我引用了过去的代码,它看起来应该正常工作,这里是完整的代码,除了$ con info但它确实连接到数据库,也没有返回任何错误......

    $Title = $_POST["Title"];
$FName = $_POST["FirstName"];
$LName = $_POST["LastName"];
$Address = $_POST["Address"];
$City = $_POST["City"];
$State = $_POST["State"];
$Zip = $_POST["Zip"];
$Side = $_POST["Side"];
$Relation = $_POST["Relation"];
$tableName = "GuestList";
include 'Config/db_conn.php';

echo "Add to DB<hr><br>";

    $sql= "INSERT INTO $tableName (Title, FirstName, LastName, Address, City, State, Zip, Side, Relation) 
    VALUES ('$Title','$FName','$LName','$Address','$City','$State','$Zip','$Side','$Relation')";

    if (mysqli_query($sql, $con)) {
        echo "Guest Added!";
        echo "<script>window.close();</script>";
    } else {
        echo "FAIL!<br>";
        echo "Guest ".$FName." ".$LName." was not added!!!!<br><br><hr>";
        echo "Error: ".mysqli_error();
        die(mysqli_error());
    }

5 个答案:

答案 0 :(得分:5)

在sql语句中有一个额外的逗号添加$relation的结尾。您还错过了$city$state之间的逗号 我还建议使用准备好的陈述。

$sql= "INSERT INTO $tableName (Title, FirstName, LastName, Address, City, State, Zip, Side, Relation) 
    VALUES ('$Title','$FName','$LName','$Address','$City','$State','$Zip','$Side','$Relation')";

除了逗号,你使用mysqli_query的方式是错误的。

mysqli_query($sql, $con)

您应该切换这些变量。

mysqli_query($con, $sql)

最后我推荐阅读关于mysqli的PHP手册。 http://nl1.php.net/manual/en/class.mysqli.php

答案 1 :(得分:2)

&#39; $ City&#39; $ State&#39;:

之间缺少逗号
$sql= "INSERT INTO $tableName (Title, FirstName, LastName, Address, City, State, Zip, Side, Relation) VALUES ('$Title','$FName','$LName','$Address','$City','$State','$Zip','$Side','$Relation')";

答案 2 :(得分:0)

你为mysql_query提供了你的论据:

mixed mysqli_query ( mysqli $link , string $query [, int $resultmode = MYSQLI_STORE_RESULT ] )

你有:

mysqli_query($sql, $con)

你需要:

mysqli_query($con, $sql)

mysql_query - PHP

注意:我们都假设$ con是一个有效的mysqli链接,因为你没有用它发布文件。

答案 3 :(得分:0)

Mysqli语法

mysqli_query($con, $sql)

答案 4 :(得分:0)

感谢大家的帮助,问题已经确定;问题是1And1托管。他们阻止自己的服务器连接到他们的数据库。 1和1需要这个帮助,希望他们在这里发帖,这样聪明的人可以帮助他们。

再次感谢大家!

更新:他们发现&#34;没有&#34;我能够连接而不会改变任何东西。至于原始帖子和人们发布的内容,CORRECT和WORKING代码片段如下:

$sql= "INSERT INTO $tableName (Title, FirstName, LastName, Address, City, State, Zip, Side, Relation) 
    VALUES ('$Title','$FName','$LName','$Address','$City','$State','$Zip','$Side','$Relation')";

    if (mysql_query($sql, $con)) {
        echo "Guest Added!";
        echo "<script>window.close();</script>";
    } else {
        echo "FAIL!<br>";
        echo "Guest ".$FName." ".$LName." was not added!!!!<br><br><hr>";
        echo "Error: ".mysql_error();
        die(mysql_error());
    }