Assisted Suicide
Assisted Suicide

Reputation: 95

Unknown issue with PHP registration form

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

Answers (1)

Felippe Duarte
Felippe Duarte

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

Related Questions