Php mysqli插入-未执行

Php mysqli插入-未执行,php,mysqli,Php,Mysqli,您在'$email--'$email',$date', 更改为“”$email“,“$date”,,应该会生效 <?php require("../inc/header.inc.php"); if(isset($_POST["username"])) { $username = strip_tags($_POST["username"]); $password = strip_tags($_POST["password"]);

您在
'$email
--
'$email',$date',

更改为“
”$email“,“$date”,
,应该会生效

<?php
    require("../inc/header.inc.php");

    if(isset($_POST["username"])) {
        $username  =  strip_tags($_POST["username"]);
        $password  =  strip_tags($_POST["password"]);
        $password2 =  strip_tags($_POST["password2"]);
        $email     =  strip_tags($_POST["email"]);
        $joindate  =  date(Y-m-d);

        if(!empty($_POST["firstname"])) {
            $firstname = strip_tags($_POST["firstname"]);
        }
        else {
            $firstname = "";
        }
        if(!empty($_POST["lastname"])) {
            $lastname = strip_tags($_POST["lastname"]);
        }
        else {
            $lastname = "";
        }
        if($password!=$password2) {
            die("Your passwords don't match! Press your browsers back button to fix it.");
        }
        if(!strlen($username)> 21) {
            die("Your username is too long! Press your browsers back button to fix it.");
        }
        if(strlen($password)< 7) {
            die("Your password is too short! Press your browsers back button to fix it.");
        }
        else {
            mysqli_query($con,"INSERT INTO users(`username`,`password`,`email`,`joindate`,`firstname`,`lastname`) VALUES ('$username','$password','$email,'$date','$firstname','$lastname')");
        }
    }
?>
使用:


啊哈!我已将数据库中的日期设置为DATETIME。

您是否收到任何错误?看起来您并不是在检查查询是否成功。在线文档对于学习返回值非常方便。您没有发现任何可能会告诉您出了什么问题的错误。最简单的方法是添加
或死亡(mysqli_error())在mysqli_查询
之后,查看它所说的是什么sadd
或die(mysqli_错误($db)
查看错误检查返回值。确保您的have autocommit设置为true,否则,您将提交事务。遗憾的是,否。我将重新询问我以前的评论:我刚刚意识到,当我提交表单时,它会将我带到一个页面,就像它将要消亡一样,但随后就不会了。
需要什么(“./inc/header.inc.php”)
?我希望数据库中的所有内容都是
mysqli\uuu
,而不是
mysql\uu
。您还需要检查列类型。可能您的日期列设置不正确。@user299920aha!我已将日期设置为日期时间。另外,您所有的表单输入是否正确命名?例如:
等?@user299920我看不到任何其他可能导致此问题的内容也是。字母大小写;
Username
Username
等不同。您需要仔细检查所有内容,并且没有不匹配的地方。啊哈!很好,就是这样。@user299920除了电子邮件列缺少的引号之外。
mysqli_query($con,"INSERT INTO users(`username`,`password`,`email`,`joindate`,`firstname`,`lastname`) 
VALUES ('$username','$password','$email,'$date','$firstname','$lastname')");
                                       ^
mysqli_query($con,"INSERT INTO users(`username`,`password`,`email`,`joindate`,`firstname`,`lastname`) 
VALUES ('$username','$password','$email','$date','$firstname','$lastname')");