2016-04-25 65 views
-1

我的目標是檢查相同的用戶名是否已經存在,如果是的話,以防止它註冊。不知道爲什麼我的代碼不起作用。PHP MySQL重複值檢查器

我的代碼:`

<?php 
$con=mysqli_connect("localhost","username","password","database"); 
$username = $_POST['username']; 
$password = $_POST['password']; 


$query = mysqli_query($con, "SELECT * FROM user WHERE username='$username'"); 

if(mysql_num_rows($query) > 0){ 

echo 'Username already exists!'; 
} 

else{ 


echo 'Username doesnt exist!'; 
$sql_query = "insert into user values('$username','$password', 'null', 'null');"; 
mysqli_query($con, $sql_query) or die (mysqli_error($con)); 
} 


mysqli_close($con); 
?>` 

錯誤:


Warning: mysql_num_rows() expects parameter 1 to be resource, object given in /home/t1bm/domains/t1bm.us.lt/public_html/register.php on line 11
Username doesnt exist!

+0

在你的代碼混合'的mysqli與mysql'! – Saty

+0

你的意思是「我的代碼不起作用」。你有錯誤嗎?你總是陷入「用戶名不存在」其他情況?像以前的評論一樣,使用mysqli,不是兩者都不是,因爲它不推薦使用。 – olibiaz

+0

是的,每次我得到回聲,該用戶名不存在。 –

回答

1

使用mysqli_num_rows。 mysql_num_rows在PHP 5.5.0中被棄用,並且在PHP 7.0.0中被刪除。

試試這個:

if(mysqli_num_rows($query) > 0){ 

echo 'Username already exists!'; 
} 
+0

感謝!真棒。有用。!!! –