0

重複の可能性:
警告:mysql_fetch_array():指定された引数は有効なMySQLの結果ではありません

上記のエラーを生成している次のmysqlクエリがありますが、理由を理解できません。助けていただければ幸いです。

$tableName="livetrack";     
$targetpage = "visitors.php";   
$limit = "$pagination"; 

$query = "SELECT COUNT(*) as num FROM $tableName where member_id = '$site_id' and display = 'yes'";
$total_pages = mysql_fetch_array(mysql_query($query));
$total_pages = $total_pages[num];

$stages = 3;
$page = mysql_escape_string($_GET['page']);
if($page){
    $start = ($page - 1) * $limit; 
}else{
    $start = 0; 
    }   

// Get page data

$query1 = "SELECT * FROM $tableName  WHERE date >= ( NOW() - '$fdate' ) and ip ='$ip' and  member_id = '$site_id' and display = 'yes'  and category= '$categories' and type ='$vtype' order by id DESC LIMIT $start, $limit";
$result = mysql_query($query1);

// Initial page num setup
if ($page == 0){$page = 1;}
$prev = $page - 1;  
$next = $page + 1;                          
$lastpage = ceil($total_pages/$limit);      
$LastPagem1 = $lastpage - 1;                    


$paginate = '';
if($lastpage > 1)
{   

以下のコードは、エラーメッセージの生成元です。

while($row = mysql_fetch_array($result))
    {
4

1 に答える 1

1

生のクエリを出力し、mysql で (mysql ツールまたは phpMyAdmin などを使用して) 手動で実行する必要があります。

エラーが出ますか?(おそらく)

はいの場合は、クエリを修正します。

そうでない場合は、クエリを実行するたびに、結果にアクセスする前に、常に mysql エラーのチェックを行う必要があります。

例えば:

  1. $query = 'SELECT * FROM ユーザー;';
  2. $result = mysql_query($クエリ);
  3. if(mysql_error() != '') { echo 'mysql クエリのエラー: #'.mysql_errno().' - '.mysql_error();
  4. else { $data = mysql_fetch_array($result); }

2 番目に考えられる可能性は、データベースへの有効な接続がないか、間違ったデータベースに接続されていることです。

于 2012-04-10T21:18:17.530 に答える