Главная->Уроки по php->Как сохранять данные в форме

Как сохранять данные в форме

20 Фев в 00:56

Как сохранять данные в форме Думаю, многие из Вас встречали сайты, где Вы полчаса заполняли какую-нибудь форму, затем у Вас была какая-то ошибка, и Вы возвращались обратно к форме, однако, все данные были стёрты. Чтобы так не бесить пользователей, надо обязательно позаботиться о сохранении данных в форме. И об этом я сегодня расскажу. Начнём с самого простого, а именно с использования атрибута autocomplete: <form autocomplete="on"> Теперь браузер будет сохранять введённые ранее в эту форму данные. Однако, есть один нюанс. Это сохранение зависит от настроек браузера, и далеко не всегда, во-первых, сработает, а, во-вторых, сработает как надо. Поэтому я использую второй, более сложный, но и более надёжный способ. Состоит он в том, что после передачи формы, все данные оттуда сохраняются в сессию, а при возврате обратно данные из сессии подставляются в форму. Например, вот такой PHP-скрипт всё это делает: <?php session_start(); $_SESSION["name"] = $_POST["name"]; $_SESSION["email"] = $_POST["email"]; header("Location: ".$_SERVER["HTTP_REFERER"]); exit; ?> И теперь HTML-код формы: <form name="myform" action="request.php" method="post"> <input type="text" name="name" value="<?=$_SESSION["name"]?>" /> <input type="text" name="email" value="<?=$_SESSION["email"]?>" /> <input type="password" name="password" /> </form> Вот так подставляются сохранённые данные в форму. Более того, Вы вправе выбирать, какие данные сохранять, а какие нет. Например, пароль сохранять однозначно не стоит, так же не стоит сохранять ввод капчи и другие аналогичные данные. Таким образом, Вы теперь уже должны знать, как сохранять данные в форме.