Тема: Відправка webstorage в PHP
В продовження теми http://replace.org.ua/topic/3611/
Оскільки ці дані (на відміну від cookies) самі не відправляються на сервер,вирішив показати як це зробити через AJAX (в чистому JS,не бачу сенсу підключати jQ) запит. Може комусь знадобиться..
<script>
if(typeof(Storage) !== "undefined") //якщо технологія підтримується
{
localStorage.setItem("login", "VTrim"); //встановлюємо значення параметру login
localStorage.setItem("password", "qwerty1234"); //встановлюємо значення параметру password
}
else
{
document.write("Технологія не підтримується,оновіть браузер"); //помилка
}
function AJAX() {
//кроссбраузерний
var Connect;
try {
Connect = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
Connect = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
Connect = false;
}
}
if (!Connect && typeof XMLHttpRequest!="undefined") {
Connect = new XMLHttpRequest();
}
return Connect;
}
var login = localStorage.getItem("login"); //зчитуємо значення параметру login
var password = localStorage.getItem("password"); //зчитуємо значення параметру password
var PHP = AJAX(); // створюємо підключення
PHP.open("POST", "/server/", true); //з'єднуємось
PHP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); // Відправляємо кодування
PHP.send("login="+encodeURIComponent(login)+"&password="+encodeURIComponent(password)); // Відправляємо POST запит
PHP.onreadystatechange = function() { //очікування відповіді
if (PHP.readyState == 4) //остання перевірка
{
if(PHP.status == 200) //отримали відповідь
{
document.write("Відповідь сервера: " + PHP.responseText); //результат
}
}
};
</script>
Далі створіть папку server та створіть в ній файл index.php,в який помістіть наступне..
Тут найпростіший приклад.
<?php
if($_POST['login'] && $_POST['password']): //якщо є POST запити login i password
echo 'Логін - <b>'.$_POST['login'].'</b> Пароль - <b>'.$_POST['password'].'</b>'; //то виводимо їх
else: //інакше
header('Location: /'); //переадресація на головну
exit;
endif;
Все .