擁有了一塊傳統的Web應用程序的我的工作,我不斷收到以下錯誤一個有趣的問題: Notice: Undefined offset:
0,1,2,3,等等等等未定義偏移誤差PHP
我有一個jQuery tablesorter根據用戶輸入對數據進行排序。此錯誤只有出現在第2+頁上的結果中。
因此,如果我去更新第1頁上的結果,一切都很好,我沒有得到上述的偏移誤差。但是,除2以外的任何頁面都會引發上面的偏移錯誤。
以下是PHP代碼生成錯誤:
if(count($_POST)>0) {
if ($_POST['action'] == "update"){
// find out how many records there are to update
$size = count($_POST['review_id']);
// start a loop in order to update each record
$i = 0;
while ($i < $size) {
// define each variable
$approved = $_POST['approved'][$i];
$banned = $_POST['banned'][$i];
$review_id = $_POST['review_id'][$i];
//var_dump($approved);
//var_dump($banned);
//var_dump($review_id);
if (isset($_POST['delete'][$i])){
$delete = 1;
} else {
$delete = 0;
}
的$批准,禁止$ $和REVIEW_ID是導致錯誤的人。當結果在頁面上時,var_dump
似乎輸出字符串。但是,在任何大於1的頁面上,所有var_dump
輸出都分別爲NULL NULL NULL。
我與螢火蟲檢查,所有的選擇形式適當命名<select name="approved[4]" id="select2">
甚至2 <select name="approved[79]" id="select2">
任何幫助頁面上的那些將不勝感激。
編輯:如果我改變傳遞到第一頁的行數量,它工作正常。我的意思是:如果我讓PHP在第一頁上顯示50行而不是當前的25行,它會正確更新。因此,第1頁上的任何數量的結果都會更新,任何可能流向第2頁及以後的結果 - 都不會!。
這聽起來很愚蠢,但你有沒有嘗試簡單地檢查一下,看看值是否在'$ _POST ['approved [4]']'? – 2010-09-07 02:54:54
檢查我最近的編輯。它工作正常 - 只要數據在第1頁。 – 2010-09-07 02:56:46
您是否嘗試過var_dump:$ _POST ['approved'],$ _ POST ['banned']和$ _POST ['review_id']? – Greyes 2010-09-07 03:01:52