Сетка Kendo ui — получить данные, отправленные в READ на моем переполнении стека

я видел этот Ответ на вопрос об отправке дополнительных параметров при выполнении операции чтения, но как мне получить доступ к этой переменной на моем 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;

}

РЕДАКТИРОВАТЬ: Спасибо за ответ Рику, но давайте покажу вам больше моего кода:

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».

Еще раз спасибо.

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;
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]