2013-04-08 102 views
0

我想運行INSERT由AJAX查詢。該查詢需要來自php會話的值,但js請求沒有看到該值。這是怎麼回事?我該怎麼辦 ?檢查php會話由AJAX

一些下面的代碼:

JS:

$('div#content').on("submit" , "form" , function (event){ 
     event.preventDefault(); 
     var href  = "ajaxRequest.php" + $(this).attr("action"); 
     var method  = $(this).attr("method"); 
     var values  = $(this).serializeArray(); 

     $.ajax({ 
      url   : href, 
      data  : values, 
      type  : method, 
      dataType : "html", 
      cache  : false, 
      success  : function (content){ 
       alert(content); 
      } 
     }); 

    }); 

PHP:在你PHP頁面頂部

public function addBoard($params = null) 
     { 
      $ID_user   = $_SESSION[ 'user_id' ]; 
      $board_model  = $params[ 'board_model' ]; 

      $query = "INSERT INTO `".prefix."boards` (      
         `ID_user` , 
         `board_model` 
         ) 
        VALUES (
         '$ID_user', '$board_model');"; 

      if($this->SQL->dbquery($query)) 
       echo 'Added'; 
      else 
       echo 'Failed'; 
     } 
+0

add'session_start()' – 2013-04-08 11:15:29

回答

0

您可能需要在頁面頂部開始會話。 在這裏看來,你在ajax文件中定義了該函數,但沒有調用。所以你有沒有在ajax文件中調用這個函數

3

session_start();

+2

你應該已經得到了接受的答案...所以我會給你一個upvote! – Abela 2013-04-08 11:35:45

0

對於服務器,ajax請求與常規頁面請求沒有區別。會話的行爲與其在頁面請求中的行爲相同。

您需要做的只是在您的php文件中啓動會話,以響應ajax請求。