Я хочу просматривать и манипулировать информацией Javascript localStorage на странице PHP, используя PHP. Я получил довольно далеко с этим, но я не там, где мне нужно быть. Я использую PHP 7.3 и vanilla JS.
У меня есть AJAX POST-отправка данных на страницу обработки PHP (а не ту, которая вызывает функцию javascript). Однако мне нужно получить доступ к переменной POST на странице, которая называется javascript. Как я могу передать информацию обратно без щелчка?
Список желаний на странице. php содержит ссылку на файл js и <div id="temporary_wishlist"></div>
.
Javascript, вызванные из списка желаний. . php:
window.addEventListener("load", function() {
loadWishlist();
});
// get wishlist contents
function loadWishlist() {
var items = wishlistStorage.data.items.join("%20");
var item_notes = wishlistStorage.data.item_notes.join("%20");
var comments = wishlistStorage.data.comments;
var wishlistRequest;
var response = null;
if(window.XMLHttpRequest) {
wishlistRequest = new XMLHttpRequest();
} else {
wishlistRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
wishlistRequest.onreadystatechange = function() {
if(wishlistRequest.readyState == 4 && wishlistRequest.status == 200) {
response = wishlistRequest.responseText;
document.getElementById("temporary_wishlist").innerHTML = response;
}
}
wishlistRequest.open("POST", "/wishlist-processor.php", true);
wishlistRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
wishlistRequest.send("wishlist_items=" + encodeURIComponent(items)
+ "&wishlist_itemnotes=" + encodeURIComponent(item_notes)
+ "&wishlist_comments=" + encodeURIComponent(comments));
}
Учитывая вышесказанное, у меня есть доступ к $_POST['wishlist_items']
внутри wishlist-processor.php
. Что бы я ни выводил внутри wishlist-processor.php
, это видно посетителю в списке желаний. php внутри <div id="temporary_wishlist"></div>
. Однако он не отображается в консоли.
В wishlist.php
я хочу загрузить информацию в переменную PHP, чтобы можно было отправить ее в запрос MySQL. Если бы я мог просто POST для себя, как я делал с проверкой формы, у меня был бы доступ к $_POST['wishlist_items']
из списка желаний. php. Я уже пытался установить URL в функции open("POST", URL, true)
на _self
или wishlist.php
, и это не сработало для меня.
Я знаю, что предлагается использовать Fetch, но я уже ошеломлен изучением новых вещей, которые я хочу понять AJAX лучше. Кроме того, Fetch не работает на Firefox Android.