|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 171 ![]() |
Bonjour,
Après des recherches sur le web, je n'ai pas trouvé de réponse à mon problème ! Je développe en php5, et voilà mon souci : j'appelle la validation d'un formulaire grâce au code javascript : Code :
mon souci, c'est de remonter un code autre que 200 (pour le xhr.status) dans le cas où mon formulaire n'est pas bon (pour savoir qu'il me faut pas vider mon formulaire par exemple!). J'ai essayé d'utiliser la fonction header, mais sans succès ("header was already send" qu'il me dit!peut être parce que j'utilise session_start(); dans ce fichier php). J'ai essayé de sortir de mon fichier php avec "exit (1);", "die (monMessage)", mais dans ces cas là, javascript reçoit toujours 200... J'ai essayé de balancer une exception à partir de mon fichier php, mais dans ce cas là, un message du genre "Uncaugh exception" s'affiche, et c'est pas très joli! (dans ce cas là, j'ai pas regardé la valeur reçu par javascript) Peut être que je fais complètement fausse route aussi quant à ma façon de gérer les formulaires! La seule façon que je vois, c'est dans le cas d'une erreur, faire genre un echo "ERREUR".$monMessageErreur, et ensuite analyser dans javascript si le résultat renvoyé par php commence par "ERREUR", mais je trouve ça pas particulièrement propre... Quelqu'un aurait il une idée de la façon de faire ça proprement? Merci pour vos réponses ! |
||
|
|
00
|
|
|
#2 | |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 808 ![]() |
Citation:
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
|
10
|
|
|
#3 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 171 ![]() |
Merci pour ta réponse !
En fait mon intention n'est pas de tricher, mais au contraire de faire les choses proprement ! Après je pensais juste que c'était le code approprié ! Le souci c'est que je remonte un message dans tous les cas (enfin quand je dis remonte, c'est que je l'écris dans mon php avec echo), qui est soit une confirmation, soit une erreur. Dans ce cas, selon toi, la bonne façon de faire est d'analyser le contenu du retour et de considérer que le traitement a marché ou pas en fonction de ça (en faisant par exemple, comme je disais dans mon précédent post, que tous mes messages d'erreurs commencent par la chaine erreur)? |
|
|
00
|
|
|
#4 |
|
Membre actif
![]() Inscription : avril 2006 Messages : 300 ![]() |
la façon classique est de gérer les erreurs avec le contenu renvoyé par la page php.
Et de formater le echo de la page php avec des séparateurs. Ainsi, tu peux traiter la réponse comme un tableau en faisant un split sur le responseText. Si tu fais par exemple un echo "CodeStatut|MessageStatut|CorpsReponse" et que dans ta fonction call tu fais : Response=http.responseText.split('|'); Tu peux traiter ta réponse en fonction du codeStatut. Manipuler un tableau est + facile que de traiter une chaine... ça te parait + propre ?
__________________
C'est curieux chez les marins ce besoin de faire des phrases ! |
|
|
10
|
|
|
#5 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 171 ![]() |
Merci, oui effectivement ça me semble un peu plus propre!
Je vais faire évoluer mon code dans ce sens là ! ![]() A plus ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com