@dmitriyuvin
FullStack developer ( Laravel & Vue )

Как сделать редирект на странице ( чтобы избавиться от Повторной отправки формы ) и вывести ошибки?

Есть форма регистрации, после неудачного заполнения ( например оставили пустое поле, или такой логин уже найден ), после отправки страницы, при попытке её обновить, выскакивает окно типа "Подтвердите отправку данных".
Как сделать так чтобы при попытке обновить страницу, окно не выскакивало и выводить ошибки.
Код:
class RegisterController extends AppController
{
    public function indexAction()
    {
        if(isset($_POST['do_register'])) {
            $registerObj = new RegisterUser();
            $errors = $registerObj->checkUser($_POST, $_FILES);
            if(empty($errors)) {
                $registerObj->registerUser($_POST, $_FILES);  // если ошибок нет, регистрируем

            }else {
                $this->setData(compact("errors")); // если ошибки есть - передаем в вид, если посавить header("Location: ... ") до или после этой строки, то ошибки не выведутся. 
            }
        }
    }
}

Как решить данную задачу?
Чтоб избавиться от "Подвертить повторную отправку формы" и вывести ошибки.
  • Вопрос задан
  • 60 просмотров
Пригласить эксперта
Ответы на вопрос 2
FanatPHP
@FanatPHP
Чебуратор тега РНР
Набрать в адресной строке своего браузера
site:qna.habr.com сделать редирект и вывести ошибки?
Ответ написан
Комментировать
joeberetta
@joeberetta
Читай: https://epdf.pub/google-for-dummies.html
Как решить данную задачу?


Для начала разгрузите бэк от троллей и сделайте первичную проверку на стороне клиента.
Рекомендуется для прочтения:
https://developer.mozilla.org/ru/docs/HTML/HTML5/C...
Валидация данных формы
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы