1

アカウント登録ページを作成しようとしていますが、データベースをチェックするシステムを追加し、同じユーザー名の行が複数ないことを確認すると、500エラーが発生します。

動作するコードは次のとおりです。

<?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.';
        }
    }   
}
?>

これが私に500エラーを与えるコードです:

<?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.';
        }
    }   
}
?>
4

3 に答える 3

3

多分セミコロンを追加します:

error_reporting(E_ALL);

編集:

)あなたもdie(mysql_error();

から削除;しますelseif($num_rows >= 1);

そして、elseブロックを修正して} else {

于 2012-07-07T22:09:29.943 に答える
0

最初のステートメントからセミコロンを見逃しました

于 2012-07-07T22:10:59.453 に答える
0

あなたが持っている

else }

あなたのコードで。これは構文エラーです。あなたが探しています

}
else {

代わりは。

于 2012-07-07T22:12:01.313 に答える