-2

さて、別の問題があります。コードは修正されました。

{ 
   //Check if user already exists 
    $un_check = mysql_query("SELECT Username FROM users WHERE Username = '$un'");  
    if(mysql_num_rows($un_check) >0) {
echo "Username already exists";
}
else{
 // Username Free
}

ただし、データベースでは引き続きユーザー名を同じにすることができます。また、「ユーザー名は既に存在します」と表示されていますが、それでもアカウントを作成しますか?

何か案は?

4

3 に答える 3

2

へのタイプミスの変更$unのよう$un_checkです、

if(mysql_num_rows($un_check) >0) {...

少なくとも開発環境では常に PHP エラーを有効にしてください。

error_reporting(E_ALL);

注: 新しいコードでは関数を使用しないでくださいmysql_*。それらはもはや保守されておらず、公式に非推奨です赤いボックスが見えますか? 代わりにプリペアド ステートメントについて学び、 PDOまたはMySQLiを使用してください。この記事は、どちらを使用するかを決めるのに役立ちます。PDO を選択する場合は、ここに良いチュートリアルがあります。

于 2013-06-25T13:13:48.873 に答える
0

これを変える :-

if(mysql_num_rows($un) >0)

if(mysql_num_rows($un_check) >0)
于 2013-06-25T13:13:56.710 に答える
0

これを試して

$un_check = mysql_query("SELECT Username FROM users WHERE Username = 'POSTVALUE'");  
if(mysql_num_rows($un_check) >0) {
   echo "Username is taken";
}
else{
 // Username Free
}
于 2013-06-25T13:14:01.703 に答える