如何在mysql中创建的表中插入新记录


How to insert a new record to the table created in mysql

我在mysql中创建了一个名为"cus_info"的表。它有"iD"NAME"PASSWORD"eMAIL"列。iD列是自动递增的。我想在新客户注册时在此表中插入新行。为此,我在PHP 中编写了以下代码

<?php
error_reporting(0);
require "init.php";
$name = $_POST["name"];
$password = $_POST["password"];
$email = $_POST["email"];

$sql = "INSERT INTO `cus_info` (`name`, `password`, `email`) VALUES ('".$name."', '".$password."', '".$email."');";
if(!mysql_query($con, $sql)){
    echo '{"message":"Unable to save the data to the database."}';
}
?>

但我总是收到"无法将数据保存到数据库"的消息你能告诉我哪里出了问题吗?提前感谢。

你能告诉我哪里出了问题吗?

在不止一个地方。

为了最直接地回答您的问题,您可以使用mysql_error()来打印您从mysql中得到的错误。为了更直接地回答它,您已经交换了参数的顺序,并且不需要在查询中包含分号。(请参阅此处的示例代码。)

您不应该使用PHP的"mysql_*"函数,这些函数在PHP5.5中被弃用,甚至在PHP7中被删除。您也不应该在没有任何清理的情况下将用户输入从表单直接传递到MySQL数据库中。

首先显示您的$con,然后放入error_reporting(1)以检查是否发生其他错误。

最后在代码中进行复制和替换。

$sql = "INSERT INTO `cus_info` (`name`, `password`, `email`) VALUES ('".$name."', '".$password."', '".$email."')";

试试这个

<?php
    error_reporting(0);
    require "init.php";
    if(isset($_REQUEST["save"]))
    {
    $name = $_POST["name"];
    $password = $_POST["password"];
    $email = $_POST["email"];     
    $sql = mysql_query("INSERT INTO `cus_info` (`name`,`password`,`email`) VALUES ('$name','$password','$email')");
    $values=mysql_insert_id();
    if($values!='')
    {
       echo '{"message":"Successfully save the data to the database."}';
    }
    else
    {
    echo '{"message":"Unable to save the data to the database."}';
    }
     }
    ?>