2014-02-17 2 views
0
$name1 = $_POST['name1']; 
    $lname = $_POST['lname']; 
    $uname = $_POST['uname']; 
    $email1 = $email1; 
    $email2 = $email2; 
    $pass1 = $pass1; 
    $pass2 = $pass2; 

    $pass1 = md5($pass1); 

    $sql = "SELECT * FROM users WHERE uname = $uname"; 
    if(mysql_num_rows($sql) > 0) { 
     echo "Sorry, that user already exists"; 
     exit(); 

     } 

Предупреждение: mysql_num_rows() ожидает параметр 1, чтобы быть ресурсом, приведены в /nas/students/unix/public_html/dsa1/register.php на линии 27Параметр предупреждения PHP

+1

Это не вопрос в его нынешнем виде. Но я предлагаю вам взглянуть на стандартную документацию PHP и предпочтительно пропустить семейство функций, небезопасных ['mysql_ *'] (http://php.net/mysqli) в пользу ['mysqli_ *'] (http: //php.net/mysqli) или даже ['PDO :: *'] (http://php.net/PDO). Пожалуйста, * никогда не * слепо вставлять данные, предоставленные пользователем, в любой запрос, если только вы на самом деле не ищете для SQL-инъекций. – Bart

ответ

0

Конечно, documentation might help:

INT mysql_num_rows (ресурс $ результат)

Получает число строк из результирующего набора. Эта команда только действительна для операторов типа SELECT или SHOW, которые возвращают фактический результат set.

Ресурс - это нечто иное, чем SQL-запрос. В этом случае ресурс - это то, что проходит библиотека PHP MySQL, чтобы ссылаться на оператор, который уже запущен.

Перед тем, как запустить его, необходимо передать оператор SQL в mysql_query. mysql_num_rows затем возьмет результат этого вызова функции и скажет вам, сколько строк в нем.

0

Вы должны сделать запрос и затем пит строк

$result = mysql_query($stringQuery $link); 
$total = mysql_num_rows($result); 
Смежные вопросы