簡體   English   中英

不提交給數據庫,用PHP,MySQLi

[英]Not Submitting to database, with php, mysqli

我無法弄清楚為什么它在通過驗證並沒有提交到數據庫后就中斷了。 只是帶有空白屏幕。 我已經回顯了new_password,它正在正確加密它。 我想念什么嗎? 還是做錯了什么? 任何幫助/建議表示贊賞。 提前致謝。

if (isset($_POST['register'])){
    //Validation and post variable stuff here but doesn't appear to be any issue with it as I have tested it alot.
}
else if(!$error_msg && !$returned_record && $_POST['register']){
    function generateHash($password_1){
        if(defined("CRYPT_BLOWFISH") && CRYPT_BLOWFISH){
    //echo "WE HAVE CRYPT BLOWFISH";
    $salt = '$2y$11$'. substr(md5(uniqid(rand(), true)), 0, 22);
    return crypt($password_1, $salt);
     }//End If
}//End Function generateHash();

    $new_password = generateHash($password_1);
    //Build our query
$sql = ("INSERT INTO members (username, email, first_name, last_name, country, password_1) VALUES (?,?,?,?,?,?)");
//Prepare our query
$stmt = $mysqli->prepare($sql) or die("PREPARE DIDNT WORK");;
//Bind the fields and there parameters to our query
$stmt->bind_param('ssssss', $username, $email, $first_name, $last_name, $country, $new_password);
//Execute the query
$stmt->execute();
header('Location: http://someurl.com');
exit();
}

代替綁定參數,請嘗試以下操作:

$sql = ("INSERT INTO members (username, email, first_name, last_name, country, password_1) VALUES (:username, :email, $first_name, :last_name, :country, :password_1)");

$stmt = $mysqli->prepare($sql) or die("Failed Execution");;

$stmt->execute(array(
 ':username' => $username,
 ':email'   => $email,
 ':first_name' => $fname,
 ':last_name' => $lname,
 ':country' $country,
 ':password_1' $password
));

我想我已經知道了。 我正在嘗試通過自定義循環將這些代碼實現到wordpress模板頁面中。 我刪除了所有循環/功能,並首先嘗試了。 所以里面有什么引起了問題。 感謝您的嘗試!

暫無
暫無

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

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