DCMS | Как убрать повтор отправки сообщений
Всем привет, как можно на дкмс убрать при обновлении страницы отправку комментариев?
То есть, написал я комментарий, потом обновляю страницу и сообщение отправляется повторно.
Как задать вывод ошибки типа
------
85111_IMG_20230118_223611.jpg (5.9 Mb)
Скачиваний: 108
То есть, написал я комментарий, потом обновляю страницу и сообщение отправляется повторно.
Как задать вывод ошибки типа
$err[]='повторяющее сообщение';
------
85111_IMG_20230118_223611.jpg (5.9 Mb)
Скачиваний: 108
775859085 (18 янв 2023, в 17:45)
Всем привет, как можно на дкмс убрать при обновлении страницы отправку комментариев?
То есть, написал я комментарий, потом обновляю страницу и сообщение отправляется повторно.
Как задать вывод ошибки типа
Всем привет, как можно на дкмс убрать при обновлении страницы отправку комментариев?
То есть, написал я комментарий, потом обновляю страницу и сообщение отправляется повторно.
Как задать вывод ошибки типа
$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 ...
}
// ...
}
Dusty (18 янв 2023, в 17:46)
Спасибо буду пробовать
Для этого необходимо добавить проверку в скрипт, отвечающий за обработку формы.
Например, можно добавить следующую проверку:
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 ...
}
// ...
}
Dusty (18 янв 2023, в 17:49)
Если будут какие то вопросы , я напишу в личку? Ну завтра если что чиркану отпишусь
при отправке сообщения добавь header('location: ');
Dusty (18 янв 2023, в 17:46)
А на безопасность плевать?
Для этого необходимо добавить проверку в скрипт, отвечающий за обработку формы.
Например, можно добавить следующую проверку:
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();
}
Serg100 (18 янв 2023, в 19:43)
А на безопасность плевать?
Я показал на примере, а о безопасности сам подумает🥱
А на безопасность плевать?
Dusty , А что, тяжело дописать mysql_real_escape_string()?
Просто если помогаете - помогайте нормально.
Вот предположим, он сделает щас это и захочет продать движок. Другой же купит и увидет, или же взломают. И будет виноват кто? Будет виноват Т.С., все верно, а все потому, что кто-то ему вот так помог.
Лучше тогда не помогайте, чем помогаете через одно место
Просто если помогаете - помогайте нормально.
Вот предположим, он сделает щас это и захочет продать движок. Другой же купит и увидет, или же взломают. И будет виноват кто? Будет виноват Т.С., все верно, а все потому, что кто-то ему вот так помог.
Лучше тогда не помогайте, чем помогаете через одно место