gazes12
@gazes12

Почему после обновление страницы в бд отправляется повторно тот же post запрос?

Здравствуйте.
<?php
    if(isset($_POST['submit'])){
        $name = $_POST['name'];
        $surname = $_POST['surname'];
        $message = $_POST['message'];
    
        $sql = "INSERT INTO `comments` (`name`, `surname`, `message`) VALUES(:name, :surname, :message)";
        $query = $conn->prepare($sql);
        $query->execute(['name' => $name, 'surname' => $surname, 'message' => $message]);
    }
?>


Я пишу чтобы код срабатывал после isset('submit'). Ну код выполняется сразу же после обновление страницы, как решить проблему?

<form method="post" class="create-comment__form">
                    <div class="create-comment__body">
                        <div class="create-comment__item">
                            <input type="text" placeholder="Имя" class="create-comment__input" name="name">
                        </div>
                        <div class="create-comment__item">
                            <input type="text" placeholder="Фамилия" class="create-comment__input" name="surname">
                        </div>
                        <div class="create-comment__item">
                            <input type="text" placeholder="Сообщение" class="create-comment__input" name="message">
                        </div>
                    </div>
                    <button class="create-comment__button" type="submit" name="submit">Написать</button>
                </form>
  • Вопрос задан
  • 75 просмотров
Пригласить эксперта
Ответы на вопрос 3
pLavrenov
@pLavrenov
Разработка сайтов
Предполагаю что вместо button должен быть input.
Ответ написан
delphinpro
@delphinpro Куратор тега PHP
frontend developer
Ответ написан
Комментировать
@epyson
if ($_POST) {  
        $name = $_POST['name'];
        $surname = $_POST['surname'];
        $message = $_POST['message'];

        $sql = "INSERT INTO `comments` (`name`, `surname`, `message`) VALUES(:name, :surname, :message)";
        $query = $conn->prepare($sql);
        $query->execute(['name' => $name, 'surname' => $surname, 'message' => $message]);
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
24 апр. 2024, в 20:57
3000 руб./за проект
24 апр. 2024, в 20:35
5000 руб./за проект