Php mysqli_查询的问题

Php mysqli_查询的问题,php,mysqli,Php,Mysqli,mysqli\u查询功能不工作 $query=mysqli_query($config,"INSERT into users (username,first_name,last_name,email,password) VALUES('$un','$fn','$ln','$em','$pass','$date','0')");"); 当我回显SQL查询时,它工作得很好,但当我尝试将其插入数据库时,它什么也不做,而是转到下一行 我使用了一个像这样的提交按钮$signup=@$\u POST['

mysqli\u查询
功能不工作

$query=mysqli_query($config,"INSERT into users (username,first_name,last_name,email,password) VALUES('$un','$fn','$ln','$em','$pass','$date','0')");"); 
当我回显SQL查询时,它工作得很好,但当我尝试将其插入数据库时,它什么也不做,而是转到下一行

我使用了一个像这样的提交按钮
$signup=@$\u POST['signup']


注册
是提交按钮的名称。

信息

INSERT INTO语句有两种基本语法,如下所示:

INSERT INTO TABLE_NAME (column1, column2, column3,...columnN) VALUES (value1, value2, value3,...valueN);
如果要为表的所有列添加值,则可能不需要在SQL查询中指定列名

INSERT INTO TABLE_NAME VALUES (value1,value2,value3);
如何检查错误

如果已建立连接或以下代码存在任何错误,您也可以检查连接:

if (!$config) {
    echo "Error: Unable to connect to MySQL." . PHP_EOL;
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
    exit;
}
或者在最后,您可以通过以下方式检查查询错误:

echo mysqli_error($config);
有关调试的更多信息,您可以阅读

代码中的问题

1. 您的代码中有太多的
应该如下所示:

$query=mysqli_query($config,"INSERT into users (username,first_name,last_name,email,password) VALUES('$un','$fn','$ln','$em','$pass','$date','0');");
2. 另外,您正试图将7个值插入5个表中,值中的值太多,或者您编写的表太少

3.
在您的
$\u帖子之前删除
@
,因为可能有一些错误,这会导致它不会显示。可以找到更多信息

您需要修复您的查询,因为您已经声明了5个字段并尝试插入7个值

因此,一旦你知道了的字段名“不知道这个家伙叫什么和日期”,那么你可能会更进一步。另外,请注意你的眼睛,因为你有太多

另一方面,请不要使用短变量名。这很痛苦。键入“大字”不需要任何费用。例如,$un应该是$user_name或类似的名称

所以,根据你的问题和糟糕的变量名,你会想要一些像

$query = mysqli_query($config, "INSERT into users(
                    username,
                    first_name,
                    last_name,
                    email,
                    password,
                    date,
                    no_clue_what_this_guy_is_called
                    ) VALUES (
                    '$un',
                    '$fn',
                    '$ln',
                    '$em',
                    '$pass',
                    '$date',
                    '0'
                    )"); 
您只需要引用varchars/text之类的列,不要在整数周围使用单引号

还有更多的话可以说,但这应该让你在你的问题的这一部分工作。
我不确定您的表中定义了什么类型的“0”。

我建议您这样使用

$con = mysqli_connect("host_name","db_username","db_password","db_name");

$query = "insert into tbl_name(col1,col2,col3) values('$val1','$val2','$val3')";

$insert = mysqli_query($con,$query);

您确定查询已完成吗?它没有提到要插入什么…插入什么?您没有指定要插入的内容。它是这样的:$query=mysqli_query($config,“插入到用户值中(“$un”、“$fn”、“$ln”、“$em”、“$pass”、“$date”、'0'));如果您想填写所有内容,则不需要列名称them@David编辑问题并添加所有必需的详细信息(格式正确),这样其他人就不必单独询问每个详细信息。告诉我们您在
$config
$config=mysqli_connect(“localhost”、“root”、“site”)或die(“无法选择数据库”)中得到了什么;您可以尝试将查询粘贴到phpmyadmin中,看看它是否有效。