Если оператор не распознает, когда mysql_num_rows возвращает 0 результатов - PullRequest
0 голосов
/ 08 июля 2011

Я пытаюсь запустить код, и он, кажется, дает мне неправильный результат, я пробовал много способов и все еще не получил его. Вот оно:

//compares vid num to db been result
$id = mysql_real_escape_string(@$_GET['g']);
$vid = mysql_real_escape_string(@$_GET['v']);
$sql= mysql_query("SELECT videos.* FROM videos WHERE videos.email = 
                 (SELECT email FROM page WHERE page.user_id = '$id') 
                  AND videos.videoid = '$vid'");

if (mysql_num_rows($sql) == 0) { echo "none";} else echo "it exists";

Если я запускаю запрос в phpmyadmin, он выполняется правильно, но когда он запускается в PHP, результат isffff, он продолжает отображать его, даже если phpmyadmin возвращает 0, что является правильным. Я пытался понять это и продолжаю получать ничего. Я попробовал !isset($sql) напротив чего-то.

Ответы [ 2 ]

4 голосов
/ 08 июля 2011
if ( $sql ) // valid result
{
    if ( mysql_num_rows( $sql ) > 0 ) // more than 0 records
        echo "it exists";
    else
        echo "none";
}

Если приведенный выше код все еще вызывает у вас проблему, то что-то в вашем запросе mysql вызывает результат.

0 голосов
/ 08 июля 2011

это работает, спасибо вам, ребята, за помощь

$vid = mysql_real_escape_string(@$_GET['kjvid']); 
$id = mysql_real_escape_string(@$_GET['pid']); 
$kjvid = mysql_query("SELECT videos.*, page.email FROM videos LEFT JOIN page ON page.email = videos.email WHERE page.user_id = '$id' AND videos.videoid = '$vid'");
if (mysql_num_rows($kjvid) == 0) { echo "none";} else echo "it exists";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...