为什么我的PHP注册不起作用?

为什么我的PHP注册不起作用?,php,mysql,Php,Mysql,我对我的PHP登录脚本有一个问题。我对PHP和MySQL非常陌生,所以在查看我的代码时请记住这一点 <?php include('connectdb.php') //define $myusername=$_POST['myusername']; $mypassword=$_POST['mypassword']; $passwordconfirm=$_POST['passwordconfirm']; $email=$_POST['email']; $firstname=$_POST['

我对我的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."')";

在这么少的代码行中有这么多的不推荐,你不应该再使用mysql\uuAPI了。改用PDO。另外,我不知道你为什么要插入密码和重复密码。最后,你不是。