DCMS | Как убрать повтор отправки сообщений
Всем привет, как можно на дкмс убрать при обновлении страницы отправку комментариев?
То есть, написал я комментарий, потом обновляю страницу и сообщение отправляется повторно.
Как задать вывод ошибки типа
------
85111_IMG_20230118_223611.jpg (5.9 Mb)
Скачиваний: 130
То есть, написал я комментарий, потом обновляю страницу и сообщение отправляется повторно.
Как задать вывод ошибки типа
$err[]='повторяющее сообщение';
------

Скачиваний: 130

Всем привет, как можно на дкмс убрать при обновлении страницы отправку комментариев?
То есть, написал я комментарий, потом обновляю страницу и сообщение отправляется повторно.
Как задать вывод ошибки типа
$err[]='повторяющее сообщение';
Для этого необходимо добавить проверку в скрипт, отвечающий за обработку формы.
Например, можно добавить следующую проверку:
if (isset($_POST['comment'])) {
// ...
// Check if comment already exists in database
$query = "SELECT * FROM comments WHERE comment = '".$_POST['comment']."'";
$result = mysqli_query($db, $query);
if (mysqli_num_rows($result) > 0) {
$err[]='Повторяющее сообщение';
} else {
// ... Insert comment into database ...
}
// ...
}
Например, можно добавить следующую проверку:
if (isset($_POST['comment'])) {
// ...
// Check if comment already exists in database
$query = "SELECT * FROM comments WHERE comment = '".$_POST['comment']."'";
$result = mysqli_query($db, $query);
if (mysqli_num_rows($result) > 0) {
$err[]='Повторяющее сообщение';
} else {
// ... Insert comment into database ...
}
// ...
}

Для этого необходимо добавить проверку в скрипт, отвечающий за обработку формы.
Например, можно добавить следующую проверку:
if (isset($_POST['comment'])) {
// ...
// Check if comment already exists in database
$query = "SELECT * FROM comments WHERE comment = '".$_POST['comment']."'";
$result = mysqli_query($db, $query);
if (mysqli_num_rows($result) > 0) {
$err[]='Повторяющее сообщение';
} else {
// ... Insert comment into database ...
}
// ...
}
Например, можно добавить следующую проверку:
if (isset($_POST['comment'])) {
// ...
// Check if comment already exists in database
$query = "SELECT * FROM comments WHERE comment = '".$_POST['comment']."'";
$result = mysqli_query($db, $query);
if (mysqli_num_rows($result) > 0) {
$err[]='Повторяющее сообщение';
} else {
// ... Insert comment into database ...
}
// ...
}
Если будут какие то вопросы , я напишу в личку? Ну завтра если что чиркану отпишусь
при отправке сообщения добавь header('location: ');

Для этого необходимо добавить проверку в скрипт, отвечающий за обработку формы.
Например, можно добавить следующую проверку:
if (isset($_POST['comment'])) {
// ...
// Check if comment already exists in database
$query = "SELECT * FROM comments WHERE comment = '".$_POST['comment']."'";
$result = mysqli_query($db, $query);
if (mysqli_num_rows($result) > 0) {
$err[]='Повторяющее сообщение';
} else {
// ... Insert comment into database ...
}
// ...
}
Например, можно добавить следующую проверку:
if (isset($_POST['comment'])) {
// ...
// Check if comment already exists in database
$query = "SELECT * FROM comments WHERE comment = '".$_POST['comment']."'";
$result = mysqli_query($db, $query);
if (mysqli_num_rows($result) > 0) {
$err[]='Повторяющее сообщение';
} else {
// ... Insert comment into database ...
}
// ...
}
При отправке делаешь редирект и всё
<?php
#Посылаем сообщение
if (isset($_POST['send'])) {
#Тут будет ваш sql запрос на добавление сообщения в базу данных
mysql_query('INSERT INTO `table` () VALUES()');
#А уже тут редирект
header('Location: /');
exit();
}

А на безопасность плевать?

Просто если помогаете - помогайте нормально.
Вот предположим, он сделает щас это и захочет продать движок. Другой же купит и увидет, или же взломают. И будет виноват кто? Будет виноват Т.С., все верно, а все потому, что кто-то ему вот так помог.
Лучше тогда не помогайте, чем помогаете через одно место