2010-08-23 61 views
-3

當我從複選框列表中刪除一個未被選中的類別時,複選框將保持選中狀態,直到我離開頁面並再次返回到該頁面,但是我希望複選框在刪除用戶提交更改。我怎樣才能做到這一點?PHP&MySQL問題

這是我的PHP代碼。

for ($x = 0; $x < count($query_cat_id); $x++){ 
    if($query_cat_id[$x] == $cat['id']){ 
     echo 'checked="checked"'; 
    } 

    if(isset($cat_id)){ 
     if(!in_array($query_cat_id[$x], $cat_id)){ 
      $mysqli = mysqli_connect("localhost", "root", "", "sitename"); 
      $delete_id = mysqli_query($mysqli,"DELETE FROM articles_categories WHERE article_id = '" . $article_id . "' AND category_id = '". $query_cat_id[$x] ."'"); 
      if (!$delete_id) { 
       print mysqli_error($mysqli); 
      } 
     } 
    } 
} 
+0

對不起,很不清楚的問題。它與MySQL有什麼關係? – deceze 2010-08-23 02:52:21

+0

我想這是[真正類似於你以前的問題](http://stackoverflow.com/questions/3543904/php-mysql-function-delete-unchecked-categories-from-database-problem),只是一個問題是獲得適當的ID值... – 2010-08-23 02:54:04

+0

這個問題不是不清楚'但我希望複選框被取消後,類別已被刪除,當用戶提交那裏的變化' – maximus 2010-08-23 02:54:41

回答

1

看起來,就像你可以檢查你的複選框被運往刪除其設置爲檢查前:在if語句表達如何返回true只有當$cat['id'] != $delete_id

if(($query_cat_id[$x] == $cat['id']) && ($cat['id'] != $delete_id)){ 
    echo 'checked="checked"'; 
} 

注意。

+0

是否必須使用此代碼重新排序我的代碼,因爲我按原樣得到錯誤。 – maximus 2010-08-23 02:58:37

1

這很可能會被瀏覽器重新檢查。如果您沒有隱式聲明checked =「checked」,那麼您唯一可以做的就是編寫一個JavaScript語句來取消選中它,並祈禱它們沒有關閉JavaScript。或重命名該字段。

編輯:我想我完全誤讀你在說什麼。不過,留下答案以防萬一。