Как я узнаю, не возвращаются ли результаты из mysql_query без смерти?

0

Я извлекаю time из списка идентификаторов. Не каждый идентификатор имеет время, связанное с ним. Как я могу узнать, нет ли результатов (EG ID еще не указан в таблице), а затем не получите много ошибок Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in /home/aslum/......

$tquery = "SELECT time ".
    "FROM clicks ".
    "WHERE id LIKE '".$id."'";
$tresults = mysql_query($tquery) or die (mysql_error());
// What do I do here? 
// IF $TRESULTS == "" THEN $foobar = false else $foobar = true
$clicktime = mysql_result($tresults,0);
if ($foobar==true) echo $clicktime."<br>";
Теги:

2 ответа

1
Лучший ответ
if(mysql_num_rows($result) > 0) {
  // do something
}
1

Вот несколько более подробный способ увидеть, где все идет не так, используя mysql_errno и mysql_num_rows, чтобы предоставить дополнительную информацию.

$sh = mysql_query($sql);
if($sh === false) {
    $error = mysql_errno();
    if($error) {
    // You really should be logging this instead of just calling die.
        die(mysql_error());
    }
// Otherwise, the query just didn't return a result set for some reason...
    echo "Something bad and unexpected happened.";
}
// Now the fun part.
if(mysql_num_rows($sh) > 0) {
    echo "I got rows!";
} else {
    echo "I got nothin' :(";
}

(Кроме того, используйте mysqli или PDO вместо mysql, если вы можете.)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню