php;mysql;如何插入用户id或创建日期?

php;mysql;如何插入用户id或创建日期?,php,mysql,registration,Php,Mysql,Registration,我做了一份简单的登记表。我应该如何编辑此表单以添加以下内容:用户id或创建日期? 当我将user_id列添加到PHPMyAdmin时,用户无法注册,但当我只有值:“First Name”;”时姓“;”电子邮件“;”“密码”在数据库中,一切正常 <!DOCTYPE html> <html> <head> <title>Registration</title> </head> <body> <?

我做了一份简单的登记表。我应该如何编辑此表单以添加以下内容:用户id或创建日期? 当我将user_id列添加到PHPMyAdmin时,用户无法注册,但当我只有值:“First Name”;”时姓“;”电子邮件“;”“密码”在数据库中,一切正常

    <!DOCTYPE html>
<html>
<head>
    <title>Registration</title>
</head>
<body>
<?php
$lclhost = "localhost";
$pass = "";
$root = "root";
$database = "regis";
$con=mysqli_connect ("$lclhost", "$root", "$pass") or die("connection fail".mysql_error());
mysqli_select_db($con, $database) or die("database fail".mysql_error());
?>
<form method="get">
    First Name : <input type="text" name="fname"><br>
    Last Name : <input type="text" name="lname"><br>
    Email: <input type="text" name="email"><br>
    Password: <input type="Password" name="password">
    <input type="submit" name="btnsubmit">
</form>
<?php 
if (isset($_GET['btnsubmit']))
{
    $fname = $_GET['fname'];
    $lname = $_GET['lname'];
    $email = $_GET['email'];
    $password = $_GET['password'];
    $registration = "INSERT INTO tbl_info values ('".$fname."','".$lname."','".$email."','".$password."')";
    mysqli_query($con,$registration);
    echo "Succes!";
}
?>
</body>
</html>

登记处
名字:
姓氏:
电子邮件:
密码:
因为您的查询没有指定列,所以只有当您提供的列值数与数据库中的列数完全相同时,mysql才会工作

向数据库中添加额外的列将导致查询中断,因为列数不再相同

您有两个选择:

选项1:在查询中添加列名:

 "INSERT INTO tbl_info(Firstname, Lastname, EmailAddress, Password)   
  values ('".$fname."','".$lname."','".$email."','".$password."')";  
选项2:始终确保数据库中的列数与查询中提供的值数完全相同

NB:如果您有一个自动递增id字段,则不必在第一个选项中包含它,因为每当您插入记录时,它都会自动增加值。但您确实需要在第二个选项中包含它,将空字符串或null作为值传递


您的id是否处于自动递增状态?在数据库中添加
user\u id
列会使代码无法工作,因为该字段也需要一个值。您必须做的是在html视图中添加user_id字段,并将其与其余的输入一起发送。您的脚本有可能查看甚至使用时发生的情况