php переменная в функции jquery - PullRequest
0 голосов
/ 03 мая 2020

У меня есть функция php, и в этой функции php я пытаюсь реализовать вызов API с использованием jQuery. Я не мог использовать PHP для этого из-за некоторых ограничений, поэтому мне нужно использовать jQuery в этой функции. Я добавил свой код jquery в функцию PHP, которая корректно работает для данных c. Но я не знаю, как мне передать PHP переменные в данных. Будем благодарны за любые предложения по этому поводу.
Вот мой код для jQuery

var settings = {
"url": "MY_URL_TO_CREATE_USER_ACCOUNT",
"method": "POST",
"timeout": 0,
"headers": {
    "external-token": "MY_TOKEN",
    "Content-Type": ["application/json", "text/plain"]
},
"data": "{\r\n\"UserName\": \"user6\",\r\n\"FirstName\": \"F_NAME\",\r\n\"Password\": \"user6_pass\",\r\n\"LastName\": \"L_NAME\",\r\n\"Subscription\": \"Full\",\r\n\"ExpireDate\": \"2020-11-08\"\r\n}",
};

jQuery.ajax(settings).done(function (response) {
    console.log(response);
});

Этот код работает для данных c, но я не знаю, как передать php переменные для атрибут данных.

Ответы [ 3 ]

0 голосов
/ 03 мая 2020

Попробуйте это. Сохраните значение вашей переменной PHP в поле, затем получите значение поля через jQuery.

<?php

$settings = '{
"url": "MY_URL_TO_CREATE_USER_ACCOUNT",
"method": "POST",
"timeout": 0,
"headers": {
"external-token": "MY_TOKEN",
"Content-Type": ["application/json", "text/plain"]
},
"data": "{\r\n\"UserName\": \"user6\",\r\n\"FirstName\": \"F_NAME\",\r\n\"Password\": \"user6_pass\",\r\n\"LastName\": \"L_NAME\",\r\ \"Subscription\": \"Full\",\r\n\"ExpireDate\": \"2020-11-08\"\r\n}",
};';
echo "<textarea style='display:none' id='some_data'>$settings</textarea>";

//Then your jQuery
var settings = $("#some_data").val();
jQuery.ajax(settings).done(function (response) {
console.log(response);
});
?>
0 голосов
/ 03 мая 2020

Pass PHP переменная SCRIPT по эхо

<?php

$data_to_pass = //Your Dynamic data

?>

<script>

    var settings = {
        "url": "MY_URL_TO_CREATE_USER_ACCOUNT",
        "method": "POST",
        "timeout": 0,
        "headers": {
            "external-token": "MY_TOKEN",
            "Content-Type": ["application/json", "text/plain"]
        },
        "data": <?php echo json_encode($data_to_pass); ?>;
    }

    jQuery.ajax(settings).done(function (response) {
       console.log(response);
    });    

<script>
0 голосов
/ 03 мая 2020

Более правильным решением было бы использование form.data для этого.

Возможно, не лучшее решение, но попробуйте это,

  1. Выведите переменную и присвойте ее javascript переменная
  2. Используйте эту переменную в атрибуте данных
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...