我在此代碼的第3,6和7行中收到未定義索引「id」的通知。我想不通,我做錯了什麼:未定義的索引錯誤(PHP)
if (isset($_POST['action']) && $_POST['action'] == 'save') {
foreach ($options as $value) {
if(($value['type'] === "checkbox" or $value['type'] === "multiselect") and is_array($_REQUEST[ $value['id'] ]))
{ $_REQUEST[ $value['id'] ]=implode(',',$_REQUEST[ $value['id'] ]); //This will take from the array and make one string
}
$key = $value['id'];
$val = $_REQUEST[$key];
$settings[$key] = $val;
}
我想這是解決一個小的事情,但還沒有與任何東西我已經試過所有的運氣。我做的一件事是運行var_dump($ key),有時$ key是空的,有時不是。所以我假設它與此有關。順便說一下,這是WordPress主題的選項頁面的一部分。這是作爲「保存」功能的一部分運行的代碼。
如果調試模式關閉,腳本實際上可以正常工作,但是當調試模式打開時,當點擊選項頁面上的保存按鈕時,彈出這些通知。預先感謝任何見解,並讓我知道是否需要發佈更多代碼以提供更多上下文。
編輯:我已經在pastebin中發佈了選項頁面。它的長。它包含t13lo的修復程序。該問題的代碼是在線1957感謝:http://pastebin.com/NGX6qzgr
我認爲你應該從我這裏得到一個退步,第一行是什麼? – ajreal 2010-12-20 17:37:11
對不起,我不明白「一行是幹什麼」的意思......我做錯了什麼?你問第一行是什麼?它應該是保存選項......我也是編程新手,所以如果我做了一些非常愚蠢的事情,請告訴我! – orbit82 2010-12-20 17:39:23
@ orbit82 - isset'? – ajreal 2010-12-20 17:40:58