2013-05-08 166 views
-2

完成新的SI的工作,但我有此錯誤:奇怪的錯誤PHP

Warning: mysql_fetch_array() [function.mysql-fetch-array]: The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH. in /home/xdesign/public_html/Powerful/header.php on line 885 

在行885,我有這樣的功能:

878 function AddView($id,$oldviews) 
879 { 
880 mysql_query("UPDATE banners SET views=".($oldviews+1)." WHERE id=".$id); 
881 } 
882 $result=mysql_query("SELECT * FROM `banners` WHERE state=0"); 
883 $got=array(); 
884 mysql_data_seek($result, 0); 
885 while ($row = mysql_fetch_array($result, $numass)) { 
886  array_push($got, $row); 
887 } 
+1

首先。使用'mysqli',其次,使用'while($ row = mysql_fetch_array($ result)){'。 – 2013-05-08 03:18:15

+0

什麼是'$ numass'? – Lion 2013-05-08 03:18:29

+0

什麼是$ numass? – Patashu 2013-05-08 03:18:34

回答

3

什麼是$numassmysql_fetch_array()的第二個參數應該是表示陣列應該位於何種格式的標誌。

+0

我不知道非常好的PHP,$ numass我認爲是點擊數 – 2013-05-08 03:22:18

+0

但在另一個託管這是工作(同一腳本,所有文件相同) – 2013-05-08 03:26:25

+1

@CindySeoLine可能在其他託管錯誤被抑制。這是*警告*而非*錯誤*。 – 2013-05-08 03:27:36

1

什麼是$numass?它似乎沒用。這是你的代碼的簡化,它完美的作品:

878 function AddView($id,$oldviews) 
879 { 
880 mysql_query("UPDATE banners SET views=".($oldviews+1)." WHERE id=".$id); 
881 } 
882 $result=mysql_query("SELECT * FROM `banners` WHERE state=0"); 
883 $got=array(); 
884 while ($row = mysql_fetch_array($result)) { 
885  array_push($got, $row); 
886 } 
+0

是的..新的工作...我希望$ numass,這是沒有必要的..謝謝 – 2013-05-08 03:29:03

+0

如果你不介意你應該點擊厚或投票正確的答案,以確保它已被解決,所以它會節省一些時間來回答你的問題。 – 2013-05-08 03:34:33

+0

新我有這個錯誤:致命錯誤:無法在25行中的/home/xdesign/public_html/Powerful/config.php中重新聲明ae_detect_ie()(先前在/home/xdesign/public_html/Powerful/config.php:20中聲明) – 2013-05-08 04:35:34

1

mysql_fetch_array第二個參數應該是陣列的類型,它是需要抓取。它是一個常量,可以取下列值:MYSQL_ASSOC,MYSQL_NUM和MYSQL_BOTH。

mysql_fetch_array可以以三種方式使用:

  • mysql_fetch_array()與MYSQL_NUM與MYSQL_ASSOC

  • mysql_fetch_array()

  • mysql_fetch_array()與MYSQL_BOTH

第二次論證d可以是MYSQL_NUMMYSQL_ASSOCMYSQL_BOTH。它不應該是$ numass

我猜numassbanners表中的列名。

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
    array_push($got, $row["numass]"); 
    .... 
+0

很好的解釋,你可以展開它看起來像什麼嗎?例子:'MYSQL_NUM' ='數組('='「,1 = '='array(0 =>「」,1 =>「」,「one」=>,「two」=>「」''。 – 2013-05-08 03:30:30

1

$ numass應該保存MYSQL_NUM,MYSQL_ASSOC或MYSQL_BOTH中的任何一個的值。但在你的情況下,它的價值不同。