Если вам не нравится ни один из вышеперечисленных и вы используете JQUERY.Вы можете сделать простую функцию загрузки или ajax, чтобы отправить информацию в ваш скрипт.
Это исключит возможность повторной отправки, и вы не перезагрузите страницу.Мне больше нравится этот метод, он быстрый и простой.
Другое решение, которое вы можете сделать, это отправить форму на другую страницу, примерно так:
<form action="chat_server.php" method="post">
Message: <input type="text" name="message" />
<input type="submit" />
</form>
На chat_server.phpфайл, вы делаете то, что вам нужно сделать с данными, и в конце вы делаете
echo '<meta http-equiv="REFRESH" content="0; url=chat.php" />';
Попробуйте, должны избавиться от вашей проблемы.