2016-02-05 53 views
1

我見過this答覆在執行READ操作時發送額外的參數,但是如何在我的php上訪問該var?Kendo ui grid - 獲取數據在我的php上讀取數據發送

這是我的客戶端代碼:

  dataSource = new kendo.data.DataSource({ 
      transport: { 
       read: 
       { 
       url:"basedados.php", 
       type: "POST", 
       dataType: "json", 
       data: { "my_param": 1, access_token : "my_token" }, // send parameter "access_token" with value "my_token" with the `read` request 
       }, 

,但現在我的PHP文件,我如何訪問它?:

else 
    { 
    $verb = $_SERVER["REQUEST_METHOD"]; 

    if ($verb == "POST") 
    { 
     header("Content-type: application/json"); 

     if($_POST['access_token']) // do i say it like this? 
     { 

      $formData = $_POST["access_token"]; 
      echo $formData; 

     } 

編輯:謝謝回答裏克s,但讓我看看我的代碼更多:

parameterMap: function(options, operation) 
       { 
       if (operation == "read" && options.models) 
       {  
        return {models: kendo.stringify(options.models)}; 
       }; 
       if (operation == "create" && options.models) 
       { 
        options.models[0].idPai = currentId; 
        $('#gridBaseDados').data('kendoGrid').dataSource.read(); 

        return {models: kendo.stringify(options.models)}; 
       }; 

        if (operation !== "read" && options.models) 
        { 
         return {models: kendo.stringify(options.models)}; 
        } 
       } 

並在我的服務器端,我(通常)有這個:

else 
{ 
    $verb = $_SERVER["REQUEST_METHOD"]; 


    if ($verb == "GET") 
    { 
     header("Content-type: application/json"); 

     $arr = array(); 
     $statement = $pdo->query("SELECT a.idDocumento, a.idPai, a.tipo,a.nome,a.dataCriacao, 
       a.dataModificacao,b.nome as NomeUtilizadorCriador, 
       c.nome as NomeUtilizadorUpdate 
       FROM Documento a left outer join Utilizador b on a.idUtilizadorCriador=b.idUtilizadores 
            left outer join Utilizador c on a.idUtilizadorUpdate=c.idUtilizadores"); 

     $statement->execute(); 
     $result = $statement->fetchAll(PDO::FETCH_ASSOC); 

     echo json_encode(array("data" => $result, "user" => $_SESSION["user"])); 
    } 

和這個工程,但我需要額外的參數,因爲我需要比較它到我的「IDPAI」。

再次感謝。

+0

一種選擇是做這樣說:'網址: 「basedados.php =的access_token my_token?」' –

+0

你的意思是我把那對我READ網址然後在服務器端,我這樣說:$ verb = $ _SERVER [「REQUEST_METHOD」]; \t \t \t如果($動詞== $ _GET [ 「的access_token」]) \t \t { – Japa

+0

這看起來像 「我怎麼讀通過POST發送的數據」 一個PHP的問題。嘗試其中之一http://stackoverflow.com/search?q=php+read+post+data – whipdancer

回答

1

你不需要在這裏發表。使用parameterMap選項發送您的數據。

dataSource = new kendo.data.DataSource({ 
     transport: { 
      read: 
      { 
      url:"basedados.php", 
      dataType: "json", 
      }, 
      parameterMap: function(options, operation) { 
      return { 
       access_token : "my_token" 
      } 
      } 
     }, 
     schema: { 
     data: "data" 
     } 

PHP

$formData = $_GET["access_token"]; 
echo $formData;