簡體   English   中英

為什么我的PHP注冊不起作用?

[英]Why isn't my PHP Sign-Up not working?

我對我的PHP登錄腳本有疑問。 我對PHP和MySQL非常陌生,因此在查看我的代碼時請記住這一點。

<?php

include('connectdb.php')

//define
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
$passwordconfirm=$_POST['passwordconfirm'];
$email=$_POST['email'];
$firstname=$_POST['firstname'];

//prevents from MySQL Injection
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$passwordconfirm = stripslashes($passwordconfirm);
$email = stripslashes($email);
$firstname = stripslashes($firstname);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$passwordconfirm = mysql_real_escape_string($passwordconfirm);
$email = mysql_real_escape_string($email);
$firstname = mysql_real_escape_string($firstname);

//Inserting In to Table
$sql = "INSERT INTO login3 (username, password, confirmpass, email, firstname)
VALUES ($myusername, $mypassword, $passwordconfirm, $email, $firstname)";

?>

這不應該將所有值插入表login3中嗎?

插入時尚未在字符串中使用引號。 另外,您應該使用反引號。 您也應該使用mysqli_ *而不是mysql_ *函數,因為它們已被棄用。 同樣,也沒有理由像@AndyIbanez所說的那樣存儲確認的密碼,從而改變您的表結構。 您甚至都沒有查詢過sql語句。 嘗試這個 :-

$sql = "INSERT INTO `login3` (`username`, `password`, `email`,    
`firstname`)
VALUES ('$myusername', '$mypassword', '$email', '$firstname')"; 

$conn = new mysqli($host, $user, $password, $database);
if(!$conn->query($sql)){
    echo "ERROR : " . mysqli_error($conn);//this will display error while insering into the table
}

使用此查詢

$sql = "INSERT INTO login3 ('username', 'password', 'confirmpass', 'email', 'firstname')
VALUES ('".$myusername."', '".$mypassword."', '".$passwordconfirm."', '".$email."', '".$firstname."')";

暫無
暫無

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

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