Popup qui agit sur la page parent

Eléphanteau du PHP | 12 Messages

14 juil. 2010, 12:38

Bonjour à tous,

J'ai un petit soucis, je met au point un système de backup de fichier, et j'ai un petit soucis,

Voilà, j'ai donc une page index sur laquel il y a divers variable que j'ai page d'une page précédente par la methode POST, et sur cette page j'aimerai que si on clic sur le bouton : utiliser le backup, celà change le contenue de la variable $fichier. Pour faire tout ca j'ai aucun soucis, cependant j'aimerai me compliquer la tâche en ajoutant un système de confirmation par l'utilisateur qu'il veut bien remettre le backup ce qui effacera toute modifications fais sur le fichier courant.

Pour celà je veux utiliser un popup, on click sur le bouton "Backup" ca ouvre un popup, avec marqué "êtes vous sur de vouloir utiliser le backup?" réponse : "non" ca ferme le popup, réponse "Oui" alors ca va changer le contenue de la variable "$fichier" puis ca va réactualiser la page Parent, avec les nouvelles valeurs de variable

Pour le moment j'utilise ceci pour ouvrir mon popup :
<script type="text/javascript">

function OuvrirFenetre(url,nom,details) {
window.open(url,nom,details)
}

</script>
Puis :
dans Body :
<p><a href="javascript:OuvrirFenetre( 'index.php','popup','width=300,height=250')">Backup</a></p>

Et mon popup as le contenue suivant :

<script language="JavaScript" type="text/javascript">

function Refresh() {
opener.location.reload();
self.close();
}

</script>



<p><a href="javascript:Refresh()">Restaurer</a></p>
Quand on clic sur restaurer, le popup ce ferme et la page ce réactualise bien, sauf que je sais pas trop comment faire passer le nouveau contenue de ma variable :S

Est-ce que quelqu'un aurai une idée ?

merci d'avance,

bye !
Cordialement,

Neo.

ViPHP
AB
ViPHP | 5818 Messages

14 juil. 2010, 17:25

Dans la page "appelante" tu peux par exemple mettre un champ de type input

Code : Tout sélectionner

<input name = "test" id = "test" type = "hidden" value = "0" />

et dans le popup tu peux changer la valeur de cet input (de la page "appelante") en faisant en javascript

Code : Tout sélectionner

var test_appelant = opener.document.getElementById('test'); test_appelant.value = 1;
Donc dans cet exemple en retournant dans la page "appelante" la valeur de document.getElementById('test').value aura pris la valeur 1 définie par le popup

Eléphanteau du PHP | 12 Messages

14 juil. 2010, 17:31

humm d'accord, donc en restant sur le même principe, je peux ajouter plusieurs variable a retransmettre ?

je vais donc tester tout ca !
merci en tout cas !
Cordialement,

Neo.

ViPHP
AB
ViPHP | 5818 Messages

14 juil. 2010, 17:57

Au passage je t'ai donné une méthode pour que cela fonctionne avec un popup comme tu l'a demandé, mais ça aurait été beaucoup plus simple en utilisant la méthode javascript if confirm() à la soumission du formulaire.

Ou encore si tu n'aime pas les messages d'alerte/confirmation javascript des navigateurs, en faisant afficher un bloc (un div) cachée dans ta page qui aurait rempli ce rôle.

Eléphanteau du PHP | 12 Messages

14 juil. 2010, 18:12

Hum merci pour les infos

Je ne connais que très peu javascript donc je ne vois pas trop comment on utilise la commande if confirm ? Cela ne me dérange pas que ce soit un message d'alerte plutot qu'un popup, du moment que ca me demande une confirmation avant de recharger ma page :)

Ah oui sinon j'ai essayé d'intégrer le code que tu m'as passé à mon code, mais le problème c'est que ca n'actualise pas la variable en PHP :S


en gros j'ai trois variable php :

$encours= contenu de la variable en cours
$backup = ce que la vcariable avais en mémoire avant modification
et
$fichier = le contenue que l'on as choisi,

ensuite j'ai une fonction :

<?php echo $fichier ?>


En y réfléchissant un peu faudrai que je mette une conditiondu genre :
if restoration = 1
alors $fichier= $ backup
else
$fichier=$encours

le tout lié à un bouton Javascipt qui demande confirmation avant de changer le contenue de la variable $fichier
Mais je sais pas trop comment faire la jonction entre les trois language (php, html et java ...)
peut être une idée pour m'orienter ?
merci d'avance
Cordialement,

Neo.

ViPHP
AB
ViPHP | 5818 Messages

14 juil. 2010, 18:47

Bah pourquoi tu veux faire choisir sur un message de confirmation ou un popup ?

Dans ton formulaire tu peux bien mettre un input de type radio pour que l'utilisateur choisisse une action ou une autre et en fonction de ça tu déclenche la procédure adéquate... ça serait plus logique, non ?

ViPHP
AB
ViPHP | 5818 Messages

14 juil. 2010, 19:36

Suite mon message précédent ...

et éventuellement ensuite rien ne t'empêche de faire une confirmation de l'action à déclencher (backup ou fichier en cours) suivant que l'un ou l'autre des boutons radio ait été coché.