0

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

<?
 $result ="select SQL_CALC_FOUND_ROWS a.*, b.name as brandname ,(case when max(length(d.pcode)) >0  then 1  else 0 end) as eventflag,  min(d.price) as eventprice 
from brand b , product a left join event_product d on a.pcode = d.pcode where a.status != 0 and a.hotflag = 0 and a.bcode = b.code and  a.bcode = '$bcode'
group by a.pcode, a.bcode, a.ocode, a.ccode, a.pname, a.copy, a.etc, a.company, a.origin, a.status, a.opt1name, a.opt1value, a.opt2name, a.opt2value, a.opt3name, a.opt3value, a.gift_name, a.gift_file, a.gift_s_file, a.saleprice, a.saleflag, a.hotflag, a.hotcode, a.hotprice, a.price, a.term, a.point, a.pointflag, a.pointorder, a.content, a.html_check, a.couple1, a.couple2, a.couple3, a.regdate, a.cnt, a.sort, a.delflag, b.name   
order by a.regdate desc limit 12"; 

  $row_object = mysql_query("Select Found_Rows() as rowcount");
  $row_object = mysql_fetch_object($row_object);
  $actual_row_count = $row_object->rowcount;

?>

 SOME HTML 

 <? while ($row = mysql_fetch_array($result)) { ?>

 HTML OUTPUT

 <? } ?>

警告:mysql_fetch_array():指定された引数は近くの有効なMySQL結果リソースではありません

 <? while ($row = mysql_fetch_array($result)) { ?>

MYSQLのバージョンは5.2.3-falcon-alphaです。

4

2 に答える 2

3

mysql_fetch_arrayMySQL リソースの代わりに文字列を渡しています。あなたがする必要があります:

$res = mysql_query($result);

<? while ($row = mysql_fetch_array($res)) { ?>

次に、$resultクエリが正しければ、結果が得られるはずです。

于 2012-06-14T14:54:57.197 に答える
2

あなたはやっていますがmysql_fetch_array($result)$result実際にはクエリのテキストが含まれています:

$result ="select SQL_CALC_FOUND_ROWS a.*, b.name as brandname ,(case when max(length(d.pcode)) >0  then 1  else 0 end) as eventflag,  min(d.price) as eventprice 
from brand b , product a left join event_product d on a.pcode = d.pcode where a.status != 0 and a.hotflag = 0 and a.bcode = b.code and  a.bcode = '$bcode'
group by a.pcode, a.bcode, a.ocode, a.ccode, a.pname, a.copy, a.etc, a.company, a.origin, a.status, a.opt1name, a.opt1value, a.opt2name, a.opt2value, a.opt3name, a.opt3value, a.gift_name, a.gift_file, a.gift_s_file, a.saleprice, a.saleflag, a.hotflag, a.hotcode, a.hotprice, a.price, a.term, a.point, a.pointflag, a.pointorder, a.content, a.html_check, a.couple1, a.couple2, a.couple3, a.regdate, a.cnt, a.sort, a.delflag, b.name   
order by a.regdate desc limit 12"; 

あなたの実際の結果は失われ$row_objectますmysql_fetch_object().

于 2012-06-14T14:54:56.680 に答える