Warum bekomme ich mit meinem PHP immer wieder 500 Fehler?

Ich versuche, eine Kontoregistrierungsseite zu erstellen. Wenn ich ein System hinzufüge, um die Datenbank zu überprüfen und sicherzustellen, dass nicht mehrere Zeilen mit demselben Benutzernamen vorhanden sind, erhalte ich die Fehlermeldung 500.

Hier ist der Code, der funktioniert:

<?php


if(isset ($_POST['submit']))
{
    include( 'connection.php' );

    $username = $_POST['username'];
    $password = $_POST['password'];
    $email = $_POST['email'];

    if(empty($username) || empty($email) || empty($password))
    {
        echo 'Please check the required fields.';
    }
    elseif(!filter_var($email,FILTER_VALIDATE_EMAIL))
    {
        echo 'Please enter a correct email address.';
    }
    else
    {
        $password = md5($password);
        $sql = mysql_query("INSERT INTO users (email,username,password) VALUES ('$email','$username','$password')") or die(mysql_error());

        if($sql)
        {
            echo 'Successfully submitted.';
        }
    }   
}
?>

Hier ist der Code, der mir einen 500-Fehler gibt:

<?php
error_reporting(E_ALL)

if(isset ($_POST['submit'])) {
    include( 'connection.php' );

    $username = $_POST['username'];
    $password = $_POST['password'];
    $email = $_POST['email'];

    $fetch = mysql_query("SELECT * FROM users WHERE username = '$email'") or die(mysql_error();
    $num_rows = mysql_num_rows($fetch);

    if(empty($username) || empty($email) || empty($password)) {
        echo 'Please check the required fields.';
    }
    elseif(!filter_var($email,FILTER_VALIDATE_EMAIL)) {
        echo 'Please enter a correct email address.';
    }

    elseif($num_rows >= 1);
    {
        echo 'This username is taken.';

    else    
    }
        $password = md5($password);
        $sql = mysql_query("INSERT INTO users (email,username,password) VALUES ('$email','$username','$password')") or die(mysql_error());

        if($sql)
        {
            echo 'Successfully submitted.';
        }
    }   
}
?>

Antworten auf die Frage(3)

Ihre Antwort auf die Frage