Comme demandé par l'OP.
Ajouter ou die(mysqli_error($conn)) à mysqli_query() pour voir si des erreurs en découlent.
Il est également préférable d'utiliser affected_rows() sur mise à jour également.
De plus, vous utilisez if(isset($_POST['contact'])){ et avoir des attributs de nom 2x pour le formulaire et le bouton.
Supprimez celui de <form> . Attribut de nom sur <form> ne fonctionne que si jQuery/Ajax est utilisé.
De plus, si votre formulaire et PHP/SQL sont dans le même fichier, utilisez un en-tête pour rediriger vers la même page et assurez-vous que vous n'êtes pas * sortie avant l'en-tête. et assurez-vous que les balises courtes sont activées.
Références :
- https://php.net/manual/en/mysqli. lignes-affectées.php
- https://php.net/manual/en/mysqli.error. php
- https://php.net/manual/en/function.header. php
*Comment réparer "En-têtes déjà envoyés " erreur dans PHP
Votre code actuel est ouvert à injection SQL
. Utilisez mysqli_* avec des relevés préparés
, ou AOP
avec instructions préparées
.