I am writing a conditional in PHP to check if certain user credentials have been used, and am using an if....elseif....else
conditional method to do it. In each statement, I am defining the value of a variable if that statement is true. No matter what, the else
value is always being used.
Also, if you want brownie points, would this be easier to do with a switch
statement?
$username = $_POST['username'];
$password = strong_crypt($_POST['password'] . $username );
$name = $_POST['name'];
$email = $_POST['email'];
while($row = mysqli_fetch_array($query))
{
$allEmails = $row['email'];
$allUnames = $row['uname'];
}
if($allEmails === $email)
{
$message = "That email already exists. You can only have one account per email address.";
}
elseif($allUnames === $username)
{
$message = "That username has already been taken. Please choose a different one.";
}
elseif($username === null || $email === null || $password === null || $name === null)
{
$message = "Please fill out all fields to register";
}
else
{
mysqli_query($conn, "INSERT INTO login (name, uname, pword, email, lat, lon, it) VALUES ('$name', '$username', '$password', '$email', '$lat', '$lon', '$it')");
$message = "goodtogo";
}