Rafraichir un formulaire apres etre passé par une popup

Rafraichir un formulaire apres etre passé par une popup - PHP - Programmation

Marsh Posté le 02-05-2005 à 11:47:11    

Bonjour,
Voilà quelques jours que je cherche une solution à mon problème, sans succes comme vous pouez l'imaginer..
J'ai pourtant trouvé quelques petites choses qui auraient pu m'être utile cependant, aucune des solutions s'appliquaient à mon cas.
Je vous explique :
- J'ai un formulaire principale contenant des cases à cochées dont les valeurs sont prises dans une BD.
- A ce formulaire j'ai ajouté un lien "ajouter" qui m'ouvre une popup (contenant à nouveau un petit formulaire) permettant d'insérer une nouvelle valeur dans la BD (et donc d'avoir en principe une case à cocher supplémentaire dans mon formulaire).
- Lors de la validation de la saisie d'une nouvelle valeur dans la popup elle execute une page faisant la requete d'insertion, et la popup se clos.
- Cependant et c'est là mon probleme, j'aimerais qu'apres l'insertion, la page du formulaire principal se mette à jour automatiquement.
 
la communication se fait donc comme ceci  : formulaire.php --> popup.php -->insertion.php [et là il me faudrait revenir sur la premiere page (en supposant qu'elle est toujours ouverte) apres avoir fermé la pop up]
 
Merci d'avance.

Reply

Marsh Posté le 02-05-2005 à 11:47:11   

Reply

Marsh Posté le 02-05-2005 à 11:49:31    

C'est pour un Intranet ? [:dawa]

Reply

Marsh Posté le 02-05-2005 à 11:51:47    

Oui tout à fait  :)

Reply

Marsh Posté le 02-05-2005 à 23:49:05    

un truc du style :
 
<input type="submit" onclick="window.opener.location.reload();" >

Reply

Marsh Posté le 03-05-2005 à 12:22:16    

Non benamoubeach j'avais deja essayé cette solution mais le probleme était que l'insertion se faisait apres le refresh de la page parent, donc ca n'était pas réellement à jour et de plus si l'on rajoute à ton code la fermeture de la pop up sur le onclick, il y a là encore un probleme de synchronisation. Le traitement ne se fait pas toujours entierement.
 
J'ai finallement trouvé la solution (qui était plus simple que je ne le pensais)
 
En fait dans mon script d'ajout dans la base qui s'execute dans la meme fenetre que la popup j'ai ajouté ces deux lignes dans le body

Code :
  1. <script>window.opener.location.reload();
  2. setTimeout("self.close();",3000);</script>


Le temps ajouté permet de s'assurer que l'insertion se fait, et que la popup se ferme apres le traitement et le refresh de la page parent.
 
Voilà si ca peut en aider qquns, j'étais tout content d'en finir avec ce ptit truc.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed