Reputation: 95
I'm trying to make a PHP login system, and I can't figure out what's causing it to not work.
Below is the PHP code from the register page. When executed, it fails to create a new user account.
<?php
if(isset($_POST['submit_btn']))
{
$username = $_POST['username'];
$password = $_POST['password'];
$cpassword = $_POST['cpassword'];
if($_password==$_cpassword)
{
$query= "SELECT * FROM user WHERE username='$username'";
$query_run = mysqli_query($con,$query);
if(mysqli_num_rows($query_run)>0)
{
echo '<script type="text/javascript">alert("This Username Already exists.. Please try another username!")</script>';
}
{
$query= "insert into user values('$username','$password')";
$query_run = mysqli_query($con,$query);
if($query_run)
{
echo '<script type="text/javascript">alert("User registered. Please login")</script>';
}
else
{
'<script type="text/javascript">alert("Error!")</script>';
}
}
}
}
?>
Upvotes: 1
Views: 47
Reputation: 15131
The problem is here
if($_password==$_cpassword)
You'd defined these variables:
$password = $_POST['password'];
$cpassword = $_POST['cpassword'];
So, use $password
and $cpassword
instead
if($password == $cpassword)
...
By the way, your code is vulnerable to SQL injection attack. Use prepared statements.
Upvotes: 3