Как вернуть страницу назад чтобы все вводные данные сохранились

137
02 марта 2018, 18:17

У меня есть форма заказа "order" и проверка через капчу.При отправке форма перенаправляется на страницу "ordergo" где проходит валидацыю. Когда пользователь ввел не правильно каптчу и отправил.Я проверяю на валидацию этим кодом :

    if ($_POST['captcha'] != $_POST['inputCaptcha'])
 header('Location: ' . $_SERVER['HTTP_REFERER']);  

Но страница открывается уже без вводимых данных. Как сделать чтобы данные сохранялись . код каптчи

$i=1;
    do
    {
        $num[$i] = mt_rand(0,9);
        echo "<img  src=\"../../i/numbers/".$num[$i].".png\" width=15 height=15> ";
        $i++;
    }
    while ($i<7);
    $captcha = $num[1].$num[2].$num[3].$num[4].$num[5].$num[6];
    ?>
    <input name="captcha" type="hidden" value="<?php echo $captcha ;?>">
    <input name="pr" type="text" size="6" maxlength="6"></p>
Answer 1

Сохранить данные можно с помощью Cookie или как предложил @humster_spb, Ajax (XMLTHttpRequest) 1) Путь через Cookie

/* Отправили запрос на авторизации
Код авторизации */
<?php
if (isset($_POST['name'])){
setcookie("name",$_POST['name']);
}
if (isset($_POST['password'])){
setcookie("password",$_POST['password']);
}
//TODO валидация данных

В шаблоне ($_SERVER['HTTP_REFERER'])

    <form action="/auth/" method="POST">
    <input type="text" value="<?php echo isset($_COOKIE['name'])?$_COOKIE['name']:"";?> />
<input type="password" value="<?php echo isset($_COOKIE['password'])?$_COOKIE['password']:"";?> />
    <input type="submit>
    </form>
READ ALSO
Проверка форм GET

Проверка форм GET

Добрый деньНе могу понять как правильно проверить форму в php

140
Выполнить код перед запуском тестов

Выполнить код перед запуском тестов

Встала проблема выполнения некоторого кода, перед запуском всех юнит тестов

152
json php mysql получить значения

json php mysql получить значения

как получить два значения vipb и vipe из массива

202