|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() |
Bonjour,
Je vous expose mon problème en espérant avoir une réponse rapidement. J'ai un fichier .php qui contient un formulaire pour l'authentification. A l'action du formulaire, je recharge ce même fichier php et je vérifie si le login et password sont correctes. Si ce n'est pas le cas, je fais un: Code php :
echo'<script>alert('erreur d'authentification')</script>"; Il m'affiche bien le message mais ne me réaffiche pas le formulaire or l'adresse dans l'url est bien la bonne et l'alert se fait juste au dessus d'où commence la balise <form> Si je mets en commentaire la ligne pour l'alert(), la page est correctement rechargée avec le formulaire réaffiché. ps: J'ai testé de faire un Code php :
echo "<script>document.monForm.submit()</script>;
En espérant avoir des réponses. Merci |
|
|
00
|
|
|
#2 |
|
Membre confirmé
![]() ![]() |
Pourquoi tu ne le fais pas en Ajax?
Peux-tu poster le code de ta page? |
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 233 ![]() |
Déjà à mon avis tu as un problème de méthode pour afficher ton message.
Si tu recharges la page le plus simple est de faire afficher ton message d'erreur par php ... pourquoi le faire afficher par une alerte javascript ? Sinon pour ta configuration actuelle, tu peux essayer de mettre l'alerte javascript en bas de page. Quant à faire tout en ajax, il y a du pour mais aussi du contre... |
|
|
00
|
|
|
#4 |
|
Membre à l'essai
![]() |
Je ne saurais pas poster la page parce que c'est sur mon pc au travail.
Comment prévenir l utilisateur avec un messagebox que l'authentification a échoué autrement qu'en js! Pour ce qui est de l'ajax,c est la politique de la boite, on en utilise pas. Ce qui est bizarre c est qu’aléatoirement le formulaire se reaffiche parfois sinon je pense que mettre l'alert en fin de page peut être une solution. Merci |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 233 ![]() |
Oui en php ce ne serait pas une boite javascript mais tu pourrais faire afficher un div que tu pourrais personnaliser, alors que les boites javascript sont pas très sexy et puis surtout elle ne s'affichent pas si javascript est désactivé...
|
|
|
00
|
|
|
#6 |
|
Membre à l'essai
![]() |
Dans mon cas ici, le javascript sera active parce que c'est pour un client qui avait une application windows et il veut exactement la même chose mais en php donc pas le choix de la messagebox.
C'est quand même fou qu'on peut pas forcer de reafficher le formulaire après l alert. Enfin je testerai en mettant l'alert a la fin et je vous tiendrai informe de la suite. Merci a vous |
|
|
00
|
|
|
#7 |
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 126 ![]() |
Bonsoir,
Difficile de t'aider sans le code PHP A+. |
|
|
00
|
|
|
#8 |
![]() ![]() Développeur Web Inscription : février 2008 Messages : 3 302 ![]() |
perso j'utiliserais une fonction alert plutot qu'un appel à une msgbox directement. et je ne ferais appel à cette fonction qu'une fois ma page chargé et testé mais bon comme dis avant je pense qu'il y a un soucis conceptuel dans ton fonctionnement.
|
|
|
00
|
|
|
#9 | ||
|
Expert Confirmé
![]() Inscription : janvier 2010 Messages : 2 699 ![]() |
Salut
Lorsque la personne valide le formulaire, le serveur reçois donc les données saisies. S'il y a erreur, il te faudrait créer 2 choses au minimum à mon sens : - Stocker le message d'erreur en Php (dans une variable par exemple) - Et une autre variable disant explicitement qu'il y a une erreur. Ensuite, pour déclencher quelque chose en Javascript lors du chargement de la page, il faut utiliser l'évènement onload au niveau du body. Si on ne fait pas ça, c'est assez aléatoire comme fonctionnement, la boite de dialogue d'Alert peut tantôt s'afficher, tantôt non. Bref ... le onload dit explicitement au navigateur que la fonction "alert" devra se déclencher une fois la page chargée (ça peut être n'importe quelle fonction, de même qu'on peut faire appel à plusieurs fonction dans le onload) Exemple : Code :
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20 Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra] |
||
|
|
00
|
|
|
#10 | |||
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 233 ![]() |
Citation:
Pour compléter un peu, je dirai cependant que le onload dans la balise body risque fort de ne pas fonctionner si une autre fonction js a utilisé précédemment ce même évènement. Pour ceux que cela intéresse, une solution : Code :
|
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com