Pour les messgaes en double, c'est juste que ta clé primaire en base est mal définie. Il existe généralement un clé primaire fonctionnelle qui suffit à définir qu'un message est un doublon. Par exemple si le message a le même auteur et le même sujet, on peut considérer que c'est un doublon. Si tu veux absolument d'une clé primaire de type ID, alors il faut juste ajouter une contrainte UNIQUE sur le clés fonctionnelles de ta table.
Après si quelqu'un clique deux fois sur le bouton ou fait un refresh, tu auras une erreur quand tu essayeras d'insérer la ligne dans ta base. Il faut alors traiter cette erreur.
Pour moi, le truc des header qui redirige est vraiment pas top. Dans f.c.l.php, John Gallet explique régulièrement ce problème.
# Clé primaire
Posté par Damien Metzler . En réponse au message Besoin d'une petite astuce.... Évalué à 1.
Après si quelqu'un clique deux fois sur le bouton ou fait un refresh, tu auras une erreur quand tu essayeras d'insérer la ligne dans ta base. Il faut alors traiter cette erreur.
Pour moi, le truc des header qui redirige est vraiment pas top. Dans f.c.l.php, John Gallet explique régulièrement ce problème.