0
<!DOCTYPE html>
<html>
<head>
<title>User Registration</title>
</head>
<body>
<!--Design area-->
<a href="register.php">Register</a><=====><a href="login.php">Login</a>
<h3>Registration Form</h3>
<form action="" method="post">
<input type="text" name="username">
<input type="password" name="password">
<input type="submit" name="register" value="Register">
</form>
<!--End design area-->
<!--PHP Section-->
<?php
if(isset($_POST['register'])){
$username=$_POST['username'];
$password=$_POST['password'];
$con=mysqli_connect('localhost','root','','log') or die("Connection failure");
$query="SELECT * FROM log_data WHERE username='".$username."'";//Validation query
$run_query=mysqli_query($con,$query);
$row_count=mysqli_num_rows($run_query);
直到现在一切正常。但是,当我给行计数条件,然后编写插入查询,那时浏览器说帐户没有创建。这意味着我的查询没有运行。为什么?为什么这个插入查询不起作用?
if($row_count==0){
$query="INSERT INTO log_data(username,password) VALUES('$username','$password')";//insert query
$run_query=mysqli_query($con,$query);
if($run_query){//if inserted
echo "Account Successfully Created";
} else {
echo "Account not created";
}
}else{
echo "This username already exits";
}
}
?>
<!--End Php Section-->
</body>
</html>
您的代码容易受到SQL注入。请学习使用[预先准备的语句](https://www.youtube.com/watch?v=nLinqtCfhKY)。另外,将密码存储为纯文本字符串是一个糟糕的主意。 –
mysqli_num_rows($ query); –
$ row_count = $ query-> num_rows; ('$ username','$ password')“; //插入查询 $ run_query = mysqli_query($ con,$ query)或者死(mysqli_error) –