#php #jquery #mysql #ajax
#php #jquery #mysql #ajax
Вопрос:
Я пытаюсь создать базовую форму, которая позволит мне добавлять детали ручной формы в базу данных, но проблема, с которой я сталкиваюсь, заключается в том, что я не могу сохранить данные в полях, если страница обновляется.
Я хочу иметь возможность сохранять все данные в полях, если страница случайно обновляется с помощью сеансов, но я не могу, не знаю, как создать код для хранения данных с использованием сеанса, который позволит мне добавить детали в базу данных MySQL, которую мне еще предстоит создать, и посмотреть, как добавить данные с помощью Ajax.
Мы будем признательны за любую помощь в том, как сохранить данные с использованием сеансов, которые вводятся в динамической форме.
Комментарии:
1. Вам необходимо загрузить данные из базы данных, хотя вы можете рассмотреть другие сохраняемые методы, если ввод данных не завершен при перезагрузке формы (cookie, pushState / popState, идентификатор фрагмента, сеанс). Ваш вопрос очень общий, существуют учебные пособия, которые показывают вам, как заполнить форму из данных, хранящихся в базе данных.
Ответ №1:
Используйте cookie для этой цели :
Перед тем, как покинуть страницу, сделайте копию данных формы в cookie и при обновлении снова заполните форму, используя эти cookie.
Комментарии:
1. Спасибо за ответ. Я думаю, что, возможно, неправильно задал вопрос. Мне нужна возможность сохранять информацию, которая была введена вручную, в случае, если страница обновляется до того, как детали были введены в базу данных.
Ответ №2:
Как только вы отправляете страницу, данные отправляются на сервер и загружается новая страница (в вашем случае это та же страница, что и раньше), вы можете использовать jQuery.post или jQuery.ajax для отправки данных формы на сервер вместо фактической отправки формы.
Ответ №3:
window.onbeforeunload = function(e) {
var val = document.getElementById("sampleData").value;
document.cookie = "SampleData=" val ";";
};
window.onload = function() {
var cook = document.cookie;
cook = cook.split(";");
for(var i=0; i < cook.length ; i ){
var tempSingleCookie = cook[i].split("=");
if(tempSingleCookie[0] === "SampleData")
{
document.getElementById("sampleData").value = tempSingleCookie[1];
//Some old date
document.cookie = "SampleData= ;expires=Thu, 18 Dec 2013 12:00:00 UTC";
}
}
};
<table>
<tr>
<td>
Sample Data
</td><td><input id="sampleData" type="text"></td>
</tr>
</table>