簡體   English   中英

php表單中的數據未插入數據庫

[英]The data from the php form is not inserting into database

表單和代碼可以正常工作,並且表單數據由於某種原因不會插入數據庫。 我已經嘗試過更改INSERT INTO部分,但是它不起作用。

if ($_POST['submit']){

if (!$_POST['email']) $error.="<br />please enter your email";
else if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) $error.="<br />please enter valid email address";

if(!$_POST['password']) $error.="<br />please enter your password";
else {

    if(strlen($_POST['password'])<8) $error.="<br />please enter password with 8";
    if (!preg_match('`[A-Z]`', $_POST['password'])) $error.="<br />please include at least one captial letter";
}
if ($error) echo "<br />There were errors in your singup details".$error;
else{
    $link = mysqli_connect("localhost", "root", "root", "test");
    $query="SELECT * FROM users WHERE email='".mysqli_real_escape_string($link, $_POST['email'])."'";
    $result = mysqli_query($link,$query);
    $result = mysqli_num_rows($result);

    if ($result) echo"That email already resgitered";
    else{
        $query= "INSERT INTO `users` (`email`, `password`) VALUES ('".mysqli_real_escape_string($_POST['email'])."','".md5(md5($_POST['email'].$_POST['password']))."')";


     mysqli_query($link, $query);
     echo "Signed up!";


    }
}
}

試試這個:

$query = sprintf("INSERT INTO `users` (`email`, `password`)
                            VALUES ('%s', '%s')"
              ,mysqli_real_escape_string($link,$_POST['email'])
              ,mysqli_real_escape_string($link,md5(md5($_POST['email'].$_POST['password']))));
mysqli_query($link, $query);

希望為您服務。

在phpmyadmin上,從那里單擊更多設置,然后單擊變量,然后滾動到sql模式並刪除'STRICT_TRANS_TABLES'保存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM