Page 1 sur 1

envoyer contenu textbox vers autre textbox d'une popup..

Posté : 10 août 2006, 16:11
par metan23
Bonjour, ayant mis de coté les methodes POST et GET, (niveau securité et je ne peux pas utiliser de toute facon), je cherche un moyen de faire passer la saisie d'une textbox vers une autre textbox d'une popup. Exemple :

- fichier saisiemail.php avec une textbox dedans

- le user saisit son adresse mail et valide ou clique sur un lien

- une fois validé, la popup du site http://autresite.com/formulaire.php apparait avec le contenu de la textbox "mail" déja remplie par la premiere saisie.

est ce possible de faire ca sans passer par un POST ou GET ? si oui comment ? auriez vous un petit exemple concret d'une solution possible par hasard ? Merci du coup de main.

Posté : 10 août 2006, 16:15
par faber8
Je pense que c'est possible en utilisant l'objet 'opener' de javascript. Ceci te permettra d'accéder aux objets de la fenêtre ayant ouvert celle sur laquelle tu te trouve. Tu pourra ainsi prendre le value de la rubrique que tu veux. A tester ...

Posté : 10 août 2006, 16:28
par metan23
voila j'ai commencé avec un petit bout de script :

Code : Tout sélectionner

<p>Saisir adresse mail</p> <input id=inscnews_mail name=mail type=text value="Votre e-mail" /> <input type=button name=Submit value=Envoyer onclick="submitNews();" /> <script language="javascript" type="text/javascript">var NewsInput = document.getElementById('inscnews_mail');NewsInput.onclick = function(){NewsInput.value = "";} function submitNews(){ var NewsMail = document.getElementById('inscnews_mail').value;window.open('form.php?mail='+ NewsMail +'', 'expInscNews', 'width=412, height=320, location=no, toolbar=no, menubar=no, resizable=no, fullscreen=no');return false;}</script>
cela est correct vu que l'affichage du texte se fait bien dans la popup (d expedia), mais je ne vois pas comment recuperer cette variable dans la popup...j pense quelqu chose du genre :

Code : Tout sélectionner

<input id=inscnews_mail name=mail type=text value="$mail" />

mais je ne pense pas que ce soit cela au niveau de la syntaxe...pourriez vous m indiquer comment recuperer ma valeur 'mail' envoyée vers form.php please ?

Posté : 10 août 2006, 16:49
par faber8
Voici la première page (test1.htm) :

Code : Tout sélectionner

<form action="" method="post" name="monformulaire" id="monformulaire"> <input name="lemail" type="text" id="lemail"> <input name="Valider" type="button" id="Valider" value=" Valider" onClick="window.open('test2.htm')"> </form>
et la seconde (test2.htm) :

Code : Tout sélectionner

<form action="" method="post" name="autreformulaire" id="autreformulaire"> <input name="autremail" type="text" id="autremail"> </form> <script> document.forms['autreformulaire'].elements['autremail'].value = window.opener.document.forms['monformulaire'].elements['lemail'].value; </script>

Posté : 10 août 2006, 17:05
par metan23
Salut feber8, merci de l'exemple, mais le soucis c'est que : je ne peux pas (hors cahier des charges) utiliser de methode POST ou GET

sinan ca aurait pas été trop galere ^^. De plus, je viens d'essayer ton code sous easyphp 1.8, et je me prend un joli "Method not allowed" au moment de valider :(. Sais tu pourkoi j ai ce msg d erreur ??

donc wala si quelqu un d aut a une soluce pour recuperer ma valeur 'mail' envoyée vers form.php , a partir de mon post au dessus, ce serait vraiment simpa. :)

Posté : 11 août 2006, 12:24
par faber8
Voici les mêmes page sans les balises de formulaires qui ont l'air de te gêner. Sache qu'on n'envoi pas les données en validant le formulaire mais c'est la fenêtre que l'on ouvre qui va chercher les données dans la fenêtre l'ayant ouverte. Il n'y a donc pas de POST ni de GET. Je n'ai eu aucun message d'erreur durant mes essaus sur easyphp ...

Page 'Test1.htm' :

Code : Tout sélectionner

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Document sans nom</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <input name="lemail" type="text" id="lemail"> <input name="Valider" type="button" id="Valider" value=" Valider" onClick="window.open('test2.htm')"> </body> </html>
Page 'test2.htm' :

Code : Tout sélectionner

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Document sans nom</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <p>Voici votre mail <br/> </p> <input name="autremail" type="text" id="autremail"> <script> document.getElementById('autremail').value = window.opener.document.getElementById('lemail').value; </script> </body> </html>