transmition de Formulaire POST vers popup

Mammouth du PHP | 19672 Messages

01 mai 2008, 00:30

Quand je parle d'un popup à part, c'est qu'au lieu de générer le HTML à partir de JavaScript, ton html est déjà dans une page que tu appelles avec window.open() et au lieu d'insérer la réponse AJAX dans ce code HTML avec le code créé par JS, tu fais un innerHTML après l'ouverture. En résumé :
-1- récupération du retour AJAX;
-2- window.open() : on ouvre le popup;
-3- insertion de la réponse avec innerHTML.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 959 Messages

01 mai 2008, 00:35

ehhh ben oui, c'est se que je cherché à faire.... :?

Mais bon, toujours pas trouvé... :?

EDIT: j'ai trouvé idiot d'ouvrir un grand popup pour dire que le couple est invalide (si il est...) donc, j'ai fais un if sur le requete.responseText pour voir si il été égal à "invalid", si oui, il envoi une alert().... et bien sur, dans le php :
	} else {
		echo 'invalid';
	}
....

Ca marche super bien :)

Mammouth du PHP | 19672 Messages

01 mai 2008, 09:15

Comment ça "un grand popup" ? As-tu un peu exploré sur la fonction window.open() ? Tu peux ajuster pas mal de paramètres incluant les dimensions, la position, l'affichage ou non de certaines barres etc....
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 959 Messages

01 mai 2008, 10:20

non non t'inquiète pas ;)
C'est juste que je trouver bête d'ouvrir un popup pour une phrase qui dit "Le couple Num de commande/password est invalide..."
donc j'ai fais agir un alert....

En plus, je trouve que ça fais plus dynamique :D

T'as toujours pas trouver le problème avec le getElementByID ?
C'est étrange quand-même.... ça me tracasse j'ai envi de savoir xD

Mierci :)

Mammouth du PHP | 19672 Messages

01 mai 2008, 11:19

T'as toujours pas trouver le problème avec le getElementByID ?
Redonne moi les éléments parce que le sujet s'est pas mal étiré et j'en ai perdu des bouts en route... Et au passage, un détail important : JavaScript est sensible à la Casse, donc getElementByID() est différent de getElementById()
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 959 Messages

01 mai 2008, 11:26

Redonne moi les éléments parce que le sujet s'est pas mal étiré et j'en ai perdu des bouts en route...
 var options = 'height=700,width=650,toolbar=no,resizable=1,scrollbars=1';
fenetre = window.open('./identifier_pop.html', 'fenetre', options); 
                    
// -4- Mettre la valeur souhaite dans cette nouvelle fenetre
fenetre.document.getElementById('corps').innerHTML = requete.responseText;
Voilà, pour moi, ça me parais logique que ça marche comme cela mais ça marche pas... :?
Et au passage, un détail important : JavaScript est sensible à la Casse, donc getElementByID() est différent de getElementById()
Oui Oui je sais t'inquiète pas ^^ c'est en écrivant vite :P

Mammouth du PHP | 19672 Messages

01 mai 2008, 11:31

Qu'est-ce que t'indique FireBug quand tu essayes ça ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 959 Messages

01 mai 2008, 11:47

fenetre.document.getElementById("corps") has no properties
fenetre.document.getElementById('corps').innerHTML =...
Jvois pas comment faire là :?

Mammouth du PHP | 19672 Messages

01 mai 2008, 11:56

Essaye comme ceci :
var options = 'height=700,width=650,toolbar=no,resizable=1,scrollbars=1';
fenetre = window.open('./identifier_pop.html', 'fenetre', options); 
                    
// -4- Mettre la valeur souhaite dans cette nouvelle fenetre une fois qu'elle sera chargée
fenetre.onload = function()
{
    fenetre.document.getElementById('corps').innerHTML = requete.responseText;
};
Il est possible en effet qu'au moment de la racherche de l'élément "corps" celui-ci ne soit pas encore chargé, on temporise donc en ajoutant un gestionnaire d'évènement onload sur la fenêtre. Mais c'est sous réserve (il faudrait que je voie tout le code et que je teste)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 959 Messages

01 mai 2008, 12:02

trop fort ! :D

Merci à toi ça marche nickel :D :D

Mammouth du PHP | 959 Messages

03 mai 2008, 17:20

Argggggggggggggg plus résolu :'(

Je viens de voir que ça marché pas sous IE... :?

Bizarre....... tu sais pourquoi toi ?? :?

C'est pas à cause de ton petit code là ? parce-que je pense pas que ça sois un problème venant de AJAX en lui même.... :P

Merci a toi xD
He he je sais hein... mais c'est que maintenant que je le remarque xD

Mammouth du PHP | 19672 Messages

03 mai 2008, 19:15

Normalement ça devrais fonctionner avec n'importe quel navigateur, incluant cette bouse de IE...
As-tu installé des outils de débogage sous IE ou pas ? Et l'as-tu configuré pour afficher toutes les alertes en cas d'erreur JavaScript ? Parfois c'est pas très pratique, mais il arrive que ça aide déjà au départ.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 959 Messages

03 mai 2008, 21:03

Cette bouse.... tu l'a dit ;)

Ben..... non.... je me sers jamais de IE ne serais-ce que pour vérifier le design, et si jamais il y a un bug de design (pas rare :P) ben j'arrive à le résoudre....(ou pas mdr)

Donc en fait, je connais aucun plugin pour débuggé sous IE... :P

Mierci à toi :)

EDIT: j'ai ma petite idée, peut-être que je vais dire une bêtise mais si je la dit pas, tu pourras pas la deviner :P
ça serais pas à cause du "onload" parce-que ça signifie "pendant le chargement" non ? et il faudrais quelque chose qui la face après le chargement.... afin je sais pas... je dit ça comme ça ;p

Mammouth du PHP | 19672 Messages

03 mai 2008, 21:33

non, "onload" signifie "Une fois la page chargée" : dans ce cas, il ne faut pas faire une traduction littérale.

Pour le débogage sous IE, regarde cette page
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 959 Messages

03 mai 2008, 21:56

J'obtient ça quand je clique sur le bouton
Line: 85
Character: 9
Code: 0
Error Message: Erreur non spécifiée.
URL: http://................./index.php?page=professionnels
la ligne 85 et la colonne 9 ne correspond à rien dans la page :?