Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何插入我的已验证信息?(SQL、PHP)_Php_Mysql_Validation - Fatal编程技术网

如何插入我的已验证信息?(SQL、PHP)

如何插入我的已验证信息?(SQL、PHP),php,mysql,validation,Php,Mysql,Validation,我有一个小问题,所以我写了一段HTML和PHP来注册一个帐户。现在我已经完成了验证,但是在所有验证都很好的情况下,如何将数据插入到数据库中:这样就没有错误了 我知道SQL语法,不用担心。我只想在所有验证都很好并且没有验证错误的情况下插入 代码: 试试这个: if(empty($_POST['username'])) { $usernameErr="Name is required"; } else { $username=validate_input($_POST['userna

我有一个小问题,所以我写了一段HTML和PHP来注册一个帐户。现在我已经完成了验证,但是在所有验证都很好的情况下,如何将数据插入到数据库中:这样就没有错误了

我知道SQL语法,不用担心。我只想在所有验证都很好并且没有验证错误的情况下插入

代码:

试试这个:

if(empty($_POST['username'])) {
    $usernameErr="Name is required";
} else {
    $username=validate_input($_POST['username']);
    if($username<=6) {
        $usernameErr="Username must be longer as 6 characters.";
    }
    if(!preg_match("/^[a-zA-Z ]*$/",$username)) {
        $usernameErr="Only letters and white space allowed.";
    }
}
if(empty($_POST['email'])) {
    $emailErr="Email is required";
} else {
    $email=validate_input($_POST['email']);
    if(!filter_var($email,FILTER_VALIDATE_EMAIL)) {
        $emailErr="Invalid email format.";
    }
}
if(empty($_POST['password'])) {
    $passwordErr="Password is required";
} else {
    $password=validate_input($_POST['password']);
    if($password<=8) {
        $passwordErr="Password must be longer as 8 characters.";
    }
    if(!preg_match("#[0-9]+#",$password)) {
        $passwordErr="Password must contain atleast 1 number.";
    }
}
if(empty($_POST['password_val'])) {
    $password_valErr="Password_val is required";
} else {
    $password_val=validate_input($_POST['password_val']);
    if($password_val!=$password) {
        $password_valErr="Password_val must be equal to password.";
    }
}
if(!isset($usernameErr,$usernameErr,$emailErr,$passwordErr,$password_valErr)) {
    //Insert QUERY
}
试试这个:

if(empty($_POST['username'])) {
    $usernameErr="Name is required";
} else {
    $username=validate_input($_POST['username']);
    if($username<=6) {
        $usernameErr="Username must be longer as 6 characters.";
    }
    if(!preg_match("/^[a-zA-Z ]*$/",$username)) {
        $usernameErr="Only letters and white space allowed.";
    }
}
if(empty($_POST['email'])) {
    $emailErr="Email is required";
} else {
    $email=validate_input($_POST['email']);
    if(!filter_var($email,FILTER_VALIDATE_EMAIL)) {
        $emailErr="Invalid email format.";
    }
}
if(empty($_POST['password'])) {
    $passwordErr="Password is required";
} else {
    $password=validate_input($_POST['password']);
    if($password<=8) {
        $passwordErr="Password must be longer as 8 characters.";
    }
    if(!preg_match("#[0-9]+#",$password)) {
        $passwordErr="Password must contain atleast 1 number.";
    }
}
if(empty($_POST['password_val'])) {
    $password_valErr="Password_val is required";
} else {
    $password_val=validate_input($_POST['password_val']);
    if($password_val!=$password) {
        $password_valErr="Password_val must be equal to password.";
    }
}
if(!isset($usernameErr,$usernameErr,$emailErr,$passwordErr,$password_valErr)) {
    //Insert QUERY
}


你的数据库结构是什么?你需要创建一个到你的数据库的连接,然后执行你的sqlIf你可以告诉我你的表结构我会为你写一个PDO代码吗?例如,tablenameusername。电子邮件id、密码、salt我只需要知道如何仅在所有输入都验证为true时运行查询。在验证都正常时,将布尔值设置为true,然后在$isValidated{//您的sql插入代码}时将sql execute放在if语句中你的数据库结构是什么?你需要创建一个到你的数据库的连接,然后执行你的sqlIf你可以告诉我你的表结构我会为你写一个PDO代码吗?例如,tablenameusername。电子邮件id、密码、salt我只需要知道如何仅在所有输入都验证为true时运行查询。在验证都正常时,将布尔值设置为true,然后在$isValidated{//您的sql插入代码}时将sql execute放在if语句中所以我会这样做:如果$usernameErr==''&&$emailErr=''&&$passwordErr=''&&$passwordErr=''&&$password\u valErr=''{//query}应该是它了?非常感谢。阿维兹,你会怎么做?只是有兴趣。我只是说。。。布尔值似乎比空字符串更安全。不过,您的解决方案可以正常工作。@Aviz您将如何使用此布尔值?@Peurr-set$isValid=False;在文件顶部,然后设置$isValid=True;在每个验证行之后,在底部做一个if$isValid{//sql insert code},我会这样做:if$usernameErr==''&&$emailErr=''&&$passwordErr=''&&$passwordr=''&$password\u valer=''{//query应该是这样的吗?非常感谢。阿维兹,你会怎么做?只是有兴趣。我只是说。。。布尔值似乎比空字符串更安全。不过,您的解决方案可以正常工作。@Aviz您将如何使用此布尔值?@Peurr-set$isValid=False;在文件顶部,然后设置$isValid=True;在每个验证行之后,在底部执行if$isValid{//sql insert code}