|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre régulier
![]() Inscription : mars 2006 Messages : 168 ![]() |
Bonjour,
j'ai un problème avec un $erreur qui ne s'affiche pas suite à la vérification qu'un formulaire est bien rempli. la vérification s'effectue dans la même page que celle qui contient le formulaire. voici la construction du code : Code :
Je ne comprends pas pourquoi en définissant $erreur je n'arrive pas à ma page avec le formulaire + le message d'erreur là où j'ai indiqué qu'il devait être. Merci à ceux qui pourront m'aider |
||
|
|
00
|
|
|
#2 |
|
Membre confirmé
![]() Inscription : janvier 2004 Messages : 537 ![]() |
Bonjour,
que te renvoie isset($erreur) lorsque tu ne remplis pas les champs ? Par ailleurs, une concaténation s'effectue avec des points et non des virgules... |
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Inscription : juillet 2006 Messages : 85 ![]() |
Bonjour crelha,
Je ne vois pas d'erreur dans le code que tu as copié mais il n'est pas complet... Eventuellement tu pourrais essayé de placé Code :
if (isset($erreur)) echo '<br>',$erreur,'<br>'; Code :
}// fin du if vérification que le formulaire est rempli Bonne chance... |
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : juillet 2006 Messages : 85 ![]() |
Tu as tout à fais raison navis84,
Si Guitou passe par là,il va encore se taper la tête... Code :
if (isset($erreur)) echo '<br>' .$erreur. '<br>'; |
|
|
00
|
|
|
#5 | ||
|
Membre régulier
![]() Inscription : mars 2006 Messages : 168 ![]() |
j'ai corrigé
<?php if (isset($erreur)) echo '<br>'.$erreur.'<br>'; ?> ce qui ne change rien pour moi, sauf que j'évite des bleus à Guitou sur la suggestion de déplacer avant " fin du if vérification que le formulaire est bien rempli", ce n'est plus possible, car la syntaxe if() $xxx= ; ne serait plus correcte. en revanche, j'ai essayé if // si les champs sont vides ( (empty($_POST['description'])) OR (empty($_POST['contact'])) OR ( (empty($_POST['categorie'])) AND (empty($_POST['categorie2'])) ) )//fin if vérification des champs vides {$erreur='merci de remplir tous les champs marqués de*'; echo '<br>'.$erreur.'<br>';} qui bien sûr fait apparaitre le message d'erreur sur une page blanche. je voulais éviter de vous coller tout le code, mais je crois que je vais devoir en mettre plus : Code :
Quelqu'un y voit plus clair que moi ? |
||
|
|
00
|
|
|
#6 |
|
Membre du Club
![]() Inscription : juillet 2006 Messages : 85 ![]() |
C'est bien ce que je pensais...
Tu attribues une valeur à $erreur si le formulaire a été soumis...tu fais ton traitement puis.....exit(). Etant donné que l'affichage de $erreur est en dehors du "if formulaire soumis" et que tu arretes le script avec exit(), ton sript me va pas jusqu'à la lecture de $erreur. Donc pour afficher le message d'erreur sur une page blanche, tu places Code :
if (isset($erreur)) echo '<br>'.$erreur.'<br>'; Pour afficher le message d'erreur et le formulaire tu supprimes simplement le exit(); Voila...il faut bien que tu comprennes que la fonction exit() termine l'execution du script courant. J'espère que ca réglera ton problème... |
|
|
00
|
|
|
#7 |
|
Membre régulier
![]() Inscription : mars 2006 Messages : 168 ![]() |
Merci beaucoup, effectivement ca marche en supprimant les deux lignes. cependant, il faut bien que je les intègre dans le code (exit, my sql close), et là, je ne vois plus où les intégrer au code ?
Merci de ton aide |
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() Inscription : juillet 2006 Messages : 85 ![]() |
Rebonjour Carelha,
Tu n'es absolument pas obligé de supprimer mysql_close() , cette fonction n'a pas d'incidence sur le déroulement du script (elle ferme la connexion à la bdd). Pour ce qui est du exit(), tu dois le laisser uniquement si tu veux empecher que le formulaire se réaffiche.Etant donné que ton message d'erreur invite à compléter ce formulaire --> supprime ce exit(). Il n'y a aucune obligation d'avoir un exit() dans un script php . La solution qui te convient le mieux est donc de déplacer ton code d'affichage de $erreur avant le mysql_close() et de supprimer exit(). En fait c'est ce que je disais dans mon message précédent..... ...bonne chance |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com