[html/javascript] rafraichissement

Fermé
jul - 13 mai 2005 à 11:01
 Ben BECKER - 27 août 2008 à 16:26
Hello

Voila j'ai un formulaire1 avec a l'interieur un lien vers un autre formulaire2.

Lorsque mon formulaire2 s'ouvre il apparait dans une nouvelle fenetre.L'utilisateur peut donc fermer le formulaire2 sans perdre les données du formulaire1.

Seuelemnt j'aimerais rafraichir le formulaire1 pour qu'apparaissent les nouvelles données récupérées du formulaire2 toujours en conservant les entrées tapées précédemment.

Merci de m'aider
A voir également:

19 réponses

Alors voici le code dans mon formulaire qui creer le lien :
le formulaire ce prénomme resultat_analyse:
<tr>		
		<td><br><b><a href="<?echo "$PHP_SELF";?>?mode=formulaire&objet=types_analyses&action=visualiser" target="popup">Technique d'analyse :</a> </b>
		<?	if ($action == 'visualiser'){
				echo $ligne[2];
			}
			else{
				$mende = creation_deroulant("select Type from types_analyses", "type", $ligne[2]);
				echo $mende;
			}?></td>
	</tr>


le code qui creer ma liste deroulante se situe dans un fichier fonction qui comprend justement toutes les fonctions qui existent dans cette partie du site


Il faut juste enocre préciser que ce code si il pouvais servir plusieurs fois car il y a plein de lien qui fonctionnent sur ce systeme.

Voila

et encore merci de te pencher sur mon probleme
2
Si vous pouviez m'aider, ca fait une semaine que je trime sur ce truc.........

Alors si quelqu'un a une autre idée de code ou un exemple pour m'aider.......;

Je reexplique ce que je veux faire:

j'ai une liste déroulante sur un formulaire, a partir d'un lien j'ouvre une popup dans laquelle je rentre une valeur.

A la fermeture de ma popup j'aimerai que cette valeur se trouve dans ma liste déorulante du début. Sans avoir besoinde rafraichir toute la page et donc de perdre d'autres données de champs dans mon formulaire

Merci d'avance
1
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
17 mai 2005 à 17:10
Je vais voir ce soir en rentrant ce que je peux te créer, mais je ne garantit rien. Continue donc un peu à chercher, je te tiens au courant.

@+
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
13 mai 2005 à 11:06
Salut,

Cela doit être fesable par javascript. Si tu as déjà un peu de code, met le et on verra ce qui peut être fait. Sinon, essaye déjà de créer au moins les interfaces...

@+
0
ben j'ai trouver le code pour rafraichir une page:

<a href="#" onclick="document.location.reload();return false()">rafraichir</b></a>

Mais cela ne va pas me garder ce qui a été entrer dans mes champs

du moins je pense pas
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
13 mai 2005 à 13:27
Lol oki, non en fait ce qu'il te faut, à mon avis, c'est une fonction javascript : window.opener. Celle ci te permet de faire communiquer ta popup avec la fenêtre qui l'a ouverte.

Ensuite je pense qu'avec php, il est facile de récupérer les variables de la popup, et pour les mettre dans le formulaire de la page de base, il te suffit de mettre value="tu insère ici ta variable php récupérée" et le tour est joué ;)

Essaye déjà de comprendre le fonctionnement, renseigne toi un peu sur google pour ce que tu comprends pas, et reviens quand tu est vraiment bloqué...

@+
0
Je me suis renseigné sur ce que tu as di. Je vais donc ouvrir ma fenetre en popup plutot quand utilisant (target="_blank").

Pour cela je veux utiliser du javascript mais je ni arrive pas.

J'ai ceci comme fonction java:
<SCRIPT LANGUAGE="JavaScript">
 <!?
 function affichage_popup(nom_de_la_page, nom_interne_de_la_fenetre)
 {
 window.open (nom_de_la_page, nom_interne_de_la_fenetre, config='height=100, width=400, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, directories=no, status=no')
 }
</script>


et comme appel dans mon formulaire j'ai quelque chose d ela sorte:

<a href="#" onclick=affichage_popup(mapage.cgi,seq) >nouvelle page : </a></b><br>



sachant que avant que je veuille utiliser ceci j'ouvrait ma page de la sorte:

<a href="<?echo "$PHP_SELF";?>?mode=formulaire&objet=mapage&action=visualiser">

Si vous pouvez m'aider
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
13 mai 2005 à 15:36
Ok alors premièrement, quel est le nom de la page qui doit être contenue dans la popup ? Parce que le "mapage.cgi" je trouve ça louche. Créer une page spéciale qui contient ton formulaire, et celui ci renverra les données à la pages qui a ouvert la popup.

Ca devrait te donner quelque chose dans ce style :
<a href="#" onclick=affichage_popup(new.html,seq) >nouvelle page : </a></b><br>

La page contenue dans la popup sera donc new.html . Cette page contiendra une formulaire dont l'action renverra les données à la page principale.

Et enfin, cette page traitera les données de manière à les afficher dans un nouveau formulaire si il arrive à les récupérer.

@+
0
Le nom de ma page s'appel: arriere.cgi

Mais vu que en fait c une page d'un site internet l'appel de la page se fait comme ca aussi:

?mode=formulaire&objet=arriere&action=visualiser

vu que c un site que j'ai repris je sais pas trop quel technique utiliser pour ouvrir ma popup.

Une fois ouverte , lors de sa fermeture je crois avoir trouver un script qui me permettrai de recuperer la nouvelle valeur:

function ajouter()
{
donnee=document.arriere.nomdelazonedetexte.value;
window.opener.formulaire.nomlistederoulante.value+=donnee;
}

a votre avis est ce que ca va marcher et comment lancer ce script a la fermeture de ma popup???

N'y a t'il pas une méthode plus simple ????
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
17 mai 2005 à 10:08
Salut

Alors oui, cela doit pouvoir marcher, si tu veux l'exécuter à la fermeture de ta popup, tu met dans le body de celle-ci onunload="ajouter()", et pour le reste, je connais pas les cgi, donc je peux pas trop t'aider. Mais je pense que si tu te sent d'attaque, c'est tout à fait fesable avec du html + javascript et du php.

@+
0
J'ai essayer de faire avec le code que j'ai dit mais serieux ca marche pas.....;;peut etre jme suis trompé quelque part vu ke le javascript je maitrise pas du tout.

J'ai donc ouvert ma fenetre en popup seulement avec dans ma balise la consigne (target="popup")

Ensuite dans mon formulaire mere j'ai taper le code suivant:
function ajoutvaleur ()
 {
 valeur=document.'?mode=formulaire&objet=popup&action=visualiser'.nom_sequence.value;
 window.opener.'?mode=formulaire&objet=formulairemere&action=visualiser'.nom_sequence.value+=valeur;
 }


Et dans le body de ma popup j'ai taper:
onunload="ajoutvaleur()";

Mais quand je revient sur mon formulaire mere après avoir fermer la popup la valeur n'est pas apparu dans les cases a cocher.
0
Voui je continue a chercher

et merci de ton aide c vraiment gentil
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
18 mai 2005 à 09:07
En fait, y a juste un truc que je comprends pas. Pourquoi vouloir ouvrir un fenêtre pour demander une information à ton visiteur, alors que tu peux très bien le faire sur la page principale, d'où le gros avantage du formulaire...

Ou alors explique ton projet en totalité, et peut-être qu'on trouvera plus simple.

@+
0
Pour faire court j'ai une base de donnée.

J'ai creer plusieurs formulaires qui permettent de la remplir.

Et j'ai deux types de formulaire:
des "simples" ou on demande par exemple d'entrer un nouveau type d'analyse

et des "complexes" ou on va rentrer tout un tas d'information sur une analyse effectué dont le type d'analyse et tout ca sous forme de case a cocher ou de liste déroulante afin déviter a l'utilisateur d'avoir a retaper toujours les memes choses.

Et dans le cas ou le type d'analyse qu'il a fait n'existe pas il peut en cliquant sur le lien du formulaire arriver sur le formulaire type analyse et en entrer un nouveau.

Je sais pas si c très clair , j'espère que tu comprendras
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
18 mai 2005 à 10:18
En gros, tu veux pouvoir, entre autre, faire en sorte qu'un input text puisse venir ajouter des éléments dans un <select> avec les options c'est ça ?

Donc ce que l'on peut faire, c'est d'ouvrir une popup avec un formulaire de type texte simple, une fois ce formulaire rempli les infos sont ajoutées à la base de données, puis dans la page principale, les nouveau éléments apparaissent afin de choisir quel type d'analyse le visiteur souhaite, et prenant compte des modifications qu'il vient d'aporter.

Est-ce que cela correspond à tes attentes ?

@+
0
OUi c ca,

sauf qu'il fo préciser que les formulaires existent déja,

et que l'utilisateur puisse commencer a remplir son formulaire

et que lorsque la valeur se rajoute au select ce qu'il a déja

taper dans les autres champs ne s'efface pas .
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
18 mai 2005 à 10:35
Ok, ok, j'en enfin bien compris ce que tu veux. Je vais donc voir un peu ce que je peux faire. Est-ce que tu as du code que je pourrais utiliser ?
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
18 mai 2005 à 11:13
Bon, je sais, ca fait trainer, mais je te propose après reflexion un truc. Voila comme je vois les choses.

Lorsque ton visiteur arrive sur ta page, un grand formulaire lui est présenté. Il le rempli, et au fur et à mesure que ce dernier trouve des "lacunes", il clique sur un lien, qui lui permet d'ouvrir une popup dans laquelle il peut ajouter par exemple un type d'analyse.

Ensuite, il valide, les informations sont ajoutée à la base de donnée, et la popup se ferme. Lorsqu'il retourne sur la page de base, celle ci se recharge, mais remet les infos déjà saisies telle quelles. Comme ça, pas besoin de faire en sorte de changer uniquement un champ, mais en rechargeant la pages, les infos qui l'étaient déjà sont auto-renseignées.

Ok ?

Comme ça, tu peux créer facilement la popup qui ajoute, puis la page de base qui se recharger en gardant les infos.
0
Cette solution me convient

il faut donc que je trouve un code qui recharge ma page principale a la fzermeture de ma popup.

Et comment faire pour conserver les infos selectionner, avec du javascript???
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
18 mai 2005 à 11:38
Pour les infos, je te conseil de garder du php. Tu n'as qu'a tester tous tes champs, et ceux qui sont remplis tu met la valeur dans une variable, que tu peux passer par GET.

Ensuite, pour recharger la page, tu fait un onunload dans la popup, qui va cherche le lien qui sera créer avec ton code php contenant toues les variables.
0
peux tu m'apporter un peu plus de précision sur comment faire.

Parcke j'ai un peu de mal a trouver par quel bout commencer.

Merci d'avance
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
19 mai 2005 à 16:01
En fait je viens de penser à quelque chose, mais pour ça je pourrai pas t'aider. C'est à mon avis LA salution, mais je te conseil de poster un nouveau post uniquement desitné à cette astuces afin de te faire aider.

Regarde ce post :

http://www.commentcamarche.net/forum/affich-1477671-%5BJavascript%5D-Faire-des-requ%EAtes-HTTP la solution à mon avis est la bonne. Mais cela dépasse mes capacités actuelles. Pour te faire une idée du résultat que tu peux obtenir :

http://www.google.com/webhp?complete=1&hl=en

Donc essaye de comprendre comment ça marche, crois moi ça en vaut la peine.

@+

0
jt'avourai ke ca dépasse également mes compétences ...klr ke ca a l'air interessant mais je crois kje vais me centrer sur autre chose.
0
slt!!
j'ai un problem un peu spécial..
j'ai une page a.php,je clique sur un lien sur cette page il m'amméne sur une popup b.php ensuite quand je clique sur un lien sur cette dérniere il m'amméne sur une autre popup c.php
je veux savoir comment faire pour recharger la page a.php en cliquant sur le lien qui se trouve sur c.php
j'ai essayé plusieur solution mais...
veuillez me repondre le plutot possible.
merci d'avance.
0
@ eldiablo :Tu utilise un simple <a href="a.php" target="_top">Lien vers a</a>
0