Я работаю над PHP-чатом, но, к сожалению, я столкнулся с проблемой.Речь идет об отправке сообщения через "?save=msg
".
"chat.php?save=msg"
Сообщение должно быть записано в базе данных.
Моя проблема в том, что я не хочу иметь возможность повторно отправить сообщениесообщение путем перезагрузки страницы.
Я попытался "Force-Reload"
для сайта, но "?save=msg"
не пропадает через это.
"onclick='chat.php'"
или что-то подобное
PHP-скрипт
if(isset($_GET['save'])) {
$save = $_GET['save'];
if($save == 'msg') {
//< <> > & &
$uauswahl = trim($_POST['nachrichteneing']);
if ($uauswahl != NULL){
$uauswahl = str_replace("&", "&", $uauswahl);
$uauswahl = str_replace("<", "<", $uauswahl);
$uauswahl = str_replace(">", ">", $uauswahl);
include("str_replace.php");
$uname = $user['benutzer'];
$ava = $user['avatar'];
$statement = $pdo->prepare("INSERT INTO chathistory (msg, name, avatar) VALUES(:msg, :name, :avatar)");
$result = $statement->execute(array('msg'=> $uauswahl, 'name'=> $uname, 'avatar'=> $ava));
if ($result == true){
$success_msg = "Nachricht wurde gesendet.";
} else {
$error_msg = "Beim Absenden der Nachricht scheint ein Fehler aufgetreten zu sein.";
}
} else{
$error_msg = "Nachricht wurde nicht gesendet. </br> Grund: Nachricht darf nicht leer sein.";
}
}
Моя форма
<form enctype="multipart/form-data" action="?save=msg" method="POST">
<input type="text" id="msgsf" autocomplete="off" name="nachrichteneing" placeholder="Tippe Nachricht...">
<input type="submit" id="msgfb" value="" />
</form>
Надеюсь, у кого-то есть идея для этого