#php #json #ajax #xmlhttprequest
#php #json #ajax #xmlhttprequest
Вопрос:
У меня есть Ajax xmlHttpRequest
, который получает некоторые данные с одного сервера. Мне нужно отформатировать этот ответ в строке желаемого формата и опубликовать его на другом сервере.
Я использую php-скрипт для публикации этой новой строки. Здесь, как мне передать свой ответ из Ajax-скрипта в мой php-скрипт?
Комментарии:
1. Данные поступают с помощью JavaScript, вы можете перестроить JSON в строку в JS. Чтобы отправить его в PHP-скрипт, я бы использовал вызов API. Это очень широкий вопрос, хотя, возможно, вы захотите уточнить, что у вас есть и чего вы хотите достичь.
2. Вы передаете «ajax json-ответ» php-скрипту точно так же, как выполняете любые другие вызовы ajax. Просто найдите свой любимый способ его сериализации / десериализации.
Ответ №1:
Легко.
В вашем скрипте выполните
var url = //This is the location of your php script
var data = "Just a string"
$.ajax({
url: url,
method: "POST",
dataType: "JSON",
data:{
data
},
success:function(response){
console.log(response " from server")
},
error:function(error){
console.log("error, something happened" , error )
}
})
В вашем PHP-скрипте
<?php
if( $_SERVER['REQUEST_METHOD'] == "POST" amp;amp; isset($_POST['data']) ):
$string = $_POST['data'];
echo json_encode( "I'm returning to Javascript " . $string )
enif;
Комментарии:
1. Я использую XMLHttpRequest() для получения данных с первого сервера. Я делаю что-то вроде этого —
2. ar xmlHttp = new XMLHttpRequest(); xmlHttp.onreadystatechange = function() { if (xmlHttp.readyState == 4 amp;amp; xmlHttp.status == 200) { var response = JSON.parse(xmlHttp.responseText); //console.log(ответ); response.result.forEach(function(item) { if(item.variable === «полезная нагрузка») {console.log(‘id is: ‘, item.id ); console.log(‘Time is: ‘, item.time); newString = item.id item.time; консоль.log(‘Новая строка — это: ‘, newString ); } }); } } // xmlHttp.open(«GET», «myURL», true); // true для асинхронного xmlHttp.send(null);
3. Извините, я опубликовал его по ошибке