台灣最大程式設計社群網站
線上人數
2014
 
會員總數:246092
討論主題:189665
歡迎您免費加入會員
討論區列表 >> PHP >> Undefined index 問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
Undefined index 問題
價值 : 5 QP  點閱數:583 回應數:3
樓主

mypetertw
門外漢
0 97
925 145
發送站內信

我有點不太懂為什麼LOG都會出現這個未定義 Undefined index

例如[22-Aug-2015 23:00:52 America/Denver] PHP Notice: Undefined index: ac

我的ac 其實是要偵測用戶有沒有登入



我的登入系統是假設你帳號密碼都對,則


還是說這樣是寫錯了?

搜尋相關Tags的文章: [ Undefined index ] ,
本篇文章發表於2015-08-23 13:04
1樓
最有價值解答

皮皮快跑
檢舉此回應
要是在其他的程式語言……這樣寫就是錯了。
變數、陣列、物件,都必須先有所謂的宣告或賦予初始值。
若未宣告或是未賦予,根本無從判斷當中的形態及值,更遑論要執行。
PHP在這方面算寬容了。
不過事實上你要是把error_reporting改E_ALL或是8191的話。
你就會直接在畫面上看到這個錯誤了。
一般在product的階段是設成0(順手就把display_errors也改成no),而在development階段則是設成E_ALL(display_errors必須是yes)。
你的狀況建議判斷存在與否使用內定函式isset()去判斷是否存在而不是用 != ''


本篇文章回覆於2015-08-24 03:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
php是屬於弱語言。
所以可以容許參數未宣告就可以用。
只是如果你將苟告等級全開的話。

它還是會通知你該變數是「未知的變數」
不過程式還是可以動就是了。

不想看到就是將警告等級改掉或是將變數宣告好就行了。(我現在都是會將變數宣告好)
本篇文章回覆於2015-08-24 09:32
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

mypetertw
檢舉此回應
我是改這樣寫



本篇文章回覆於2015-08-27 12:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.