2011-07-10 66 views
-1

我在IE中收到以下錯誤,它正在阻止加載頁面。我試圖找到這個錯誤,但對於我的生活看不到它。代碼的部分的錯誤點是在這裏jsfiddle.net:IE期望')'錯誤

http://jsfiddle.net/SrgsC/

我將不勝感激,如果有人能夠指出問題的錯誤?非常感謝

我使用php5.3.5

Message: Expected ')' 
Line: 2867 
Char: 41 
Code: 0 
URI: http://sample.com/admin/cp.php 


Message: Expected ')' 
Line: 2867 
Char: 40 
Code: 0 
URI: http://sample.com/admin/cp.php 
+3

這些是Javacsript錯誤,而不是PHP錯誤。 – Spudley

+0

您應該避免混合使用HTML/PHP – dynamic

+1

此外,JSFiddle不適用於PHP代碼,因此您的JSFiddle沒有多大用處。 – Spudley

回答

3

那麼,你所提供的代碼是在PHP,JavaScript不。如果這隻發生在IE中,那麼很明顯你已經將一個PHP函數放入JavaScript文件中。否則,它應該在IE,FF,Chrome中發生的事情......

一些問題,無論如何PHP函數:

  • 你開始$print .=。這意味着「將以下字符串添加到$ print」變量中,但$ print不是在該函數中定義的。如果它是一個全局變量,你需要把global $print;上線之前,或者,如果是本地的,那麼你需要使用$print =(無「」)
  • mysql_numrows應該mysql_num_rows除非您已經創建了自己的數字功能
  • mysql_result不應該這樣使用。要引用文檔:

    上大的結果集時,您應考慮使用的是取整行

  • 你不應該手動通過行通過跟蹤當前行號迭代的功能之一(與上述相同的原因)
  • 15參數功能太多。這是很多人的方式。可以有效處理的最大值是7(根據代碼完整),更熱心的人會爭辯更少(鮑勃叔叔,我相信,說3是一個很好的標準)。無論哪種方式,如果我在代碼檢查過程中在方法中看到8個或更多參數,我會立即知道需要更改的內容。

+0

非常感謝你的簡潔明確的答案。我現在有一個起點。 – bollo

+0

「如果這隻發生在IE中......」只是爲了記錄,在IE中發生的錯誤在其他瀏覽器中不會發生是很常見的,因爲IE(特別是<9)對某些事情的寬容度較低如缺少分號。它也有一些像'setTimeout'那樣執行不同的東西。實際上,在IE中發生但在其他地方沒有發生的JavaScript錯誤是我存在的禍根。 –

+0

我知道。這就是爲什麼我對其他瀏覽器表示讚賞。 – cwallenpoole