Par AJAX ?
Bonjour,
Je suis face à un problème...
Comment vous feriez pour récuperer les erreurs de votre formulaire ? j'ai essayé plusieurs choses, mais à chaque fois il y a toujours un truc qui ne pas va.... je m'explique
Dans les grandes lignes, j'ai mon traitement PHP et formulaire HTML sur index.php , je créer mon tableau d'erreurs $errors = []; et ensuite dans les différents IF je met $errors['nom'] = "Nom invalide" etc.... et dans la partie HTML je place :
et il me liste les différentes erreurs dans une div que j'ai créer, le problème, c'est que j'ai besoin une fois que le formulaire est validé et donc qu'il y a des erreurs, de retourner au niveau de mon formulaire (qui est placé vers le milieu de ma page avec un ID 1 sur la balise form), mais je ne peux pas faire de header('Location:index.php#1'); car le message ne s'affiche pas sinon.... etant donné qu'il recharge la page...
Auriez vous un truc pour contourner ce problème ?
J'ai bien essayé la solution des $_SESSION['flash'] avec le tuto de Grafikart , ça marche à peu près bien, mais le problème c'est comment lister toute les erreurs (donc foreach) dans ce code ci au niveau de la div flash :
Merci d'avance....
Cordialement......
3 réponses
il faut pas mellanger entre les message flash et les erreur de forulaire separer les choses
apres dans les erreur cree juste un tableau assoc
example: [
'email' => 'not valid',
'nom' => 'not valid'
]
apres il faut parcourir ca
Bonsoir,
J'ai retrouvé ceci, un petit code HTML / PHP / AJAX, que j'ai épuré au maximum.... le problème c'est que les erreurs sont toute mises en dessous des inputs, mais est il possible par rapport à ce code, de mettre toute les erreurs dans une div au dessus ?
J'y arrive en temps normal mais là avec AJAX impossible... :(
J'ai d'ailleurs remis dans le HTML mon foreach de $errors et le $errors = []; dans le PHP, ainsi que $errors['prenom'] = "Text" dans le IF du prénom, mais ça ne marche pas..... sauriez vous pourquoi ?
Cordialement.
Voici les codes:
Index.php
Contact.php
Script.js (AJAX)