Мне нужно использовать LocalStorage значение в файле PHP для обновления значений в моей базе данных. Я знаю, что мне нужен Ajax для этого, я не могу заставить его работать.
мой LocalStorage Элемент с именем option и существует (проверяется в браузере и сохраняет значение в ДИВ)
$(document).ready(function(){
$.ajax({
type: "POST",
url: "activity.php",
data: { storageValue: localStorage.getItem('option') },
success: function(data){
alert('success');
}
});
});
Пример PHP:
$option = $_POST['storageValue'];
mysql_query("...SET x = '".$option."'...");
echo 'Update complete';
Я не вижу никаких данных поста и не получаю ответ.
Спасибо!
Твоя страница:
<form>
<input type="hidden" value="thedatayouwanttopost" id="option"/>
</form>
<script src="Your_Js_File.js"></script>
Ваш файл JS:
document.getElementById('option').submit(); // This submits the form
var storageValue = $('#option').val(); // This gets the value of the form once it has been posted to the .php file
$(document).ready(function(){
$.ajax({
type: "POST",
url: "activity.php",
data: { storageValue:storageValue },
success: function(data){
alert('success');
}
});
return false; // This stops the page from refreshing
});
Ваш PHP-файл для обратного вызова данных в AJAX и отображения предупреждения (activity.php):
...
$option = $_POST['storageValue']; // This is the post value of your hidden input on your page
mysql_query("...SET x = '".$option."'...");
?><input type="hidden" id="option" value="<?php echo $option; ?>"><?
// The input above posts the value of 'option' on your page back to your Ajax and spits out the request.
...
Других решений пока нет …