2011-07-31 40 views
0

我有兩個單選按鈕PHP單選按鈕自動更新數據庫表

<div align="center" class="radio_group"> 
    <input type="radio" id="gallerymenustyle1" class="element radio" name="gallerymenustyle[]" value="1" /> Gallery Link - In the navigation of my website, display one "gallery" link<br /> 
    <input type="radio" id="gallerymenustyle2" class="element radio" name="gallerymenustyle[]" value="2" /> Category Links - In the navigation of my website, display a separate link to each category. 
</div> 

如何從連續更新一個領域,一旦我點擊的一個單選按鈕沒有碰到一個提交按鈕?

這裏是我迄今爲止

$(function(){ 
      $(':radio').click(function(){ 
      if($(this).is(':checked')) 
       { 
        var galleryMenuStyleVal = $(this).val(); 
        $.ajax({ 
        type: 'POST', 
        url: '<?php echo BASE_URL; ?>ajax/ajax_methods_gallery.php', 
         data: 'showGalleryMenuStyleFromEditPage=' + galleryMenuStyleVal 
        }); 
       } 
      }); 
     }); 


if($_POST['showGalleryMenuStyleFromEditPage'] !== null || $_POST['shoGalleryMenuStyleFromEditPage'] !== 0){ 
    $userObj = new User(); 
    if($_POST['showGalleryMenuStyleFromEditPage'] == 1){ 
     $query = "UPDATE users SET gallery_menu_style = 1"; 
     $userObj->updateUserGalleryMenuStyle($query); 
    } else if ($_POST['showGalleryMenuStyleFromEditPage'] == 2){ 
     $query = "UPDATE users SET gallery_menu_style = 2"; 
     $userObj->updateUserGalleryMenuStyle($query); 
    } 
} 

是我的jQuery正確包括PHP的某些部分? ..because它不工作

回答

1

在此行中:

if($_POST['showGalleryMenuStyleFromEditPage'] !== null || $_POST['shoGalleryMenuStyleFromEditPage'] !== 0){ 

您使用 'shoGalleryMenuStyleFromEditPage' 而不是 'showGalleryMenuStyleFromEditPage' 第二$ _ POST值。因此它不允許任何事情通過最初的if語句。您還使用了!== 0而不是!= 0

這就是爲什麼使用短鍵/名稱不是一個壞主意...

如果仍然沒有工作,使用Firebug,以確定是否您的jQuery的實際發送任何東西。

+0

沒有幫助,它仍然不會更新表格中的gallery_menu_style字段,無論我選中哪兩個單選按鈕:( – sasori

+0

將$ _POST變量替換爲已定義的變量(如$ post1 = 1; $ post2 = 2),看看PHP是否運行正常,如果輸入數據,那麼它肯定是你的jQuery的一個問題。你可以做的另一個小測試是檢查你的JavaScript:去掉.click(function() {})並替換爲$(this).remove();如果點擊單選按鈕消失,jQuery將識別點擊事件,但不會調用AJAX – hohner

+0

我從firebug中檢查了控制檯..後標籤顯示了這個showGalleryMenuStyleFromEditPage = 2 ..或當我選擇第一個無線電buttn showGalleryMenuStyleFromEditPage = 1 – sasori