Page 1 sur 1

windows opener

Posté : 19 déc. 2006, 10:03
par fred9999
Bonjour à tous,

voila j'ai ma page index.php donc celle ci :
<?php
if($_GET['form'])
{
echo"<script language=\"javascript\">
window.open('http://parch/index2.php', 'popup','width=200,height=200,top=200,left=400,toolbar=yes,location=0,directories=yes,status=0,menubar=0,scrollbars=yes,copyhistory=0,resizable=yes'); 
window.opener=self;
self.close();  
</script>";
}
else
{
echo"<script language=\"javascript\">
window.open('http://parch/index2.php', 'WindowName', 'fullscreen=yes'); 
window.opener=self; 
self.close(); 
</script>";
}
?>
elle a pour but de redimensionner la fenetre de l'explorateur en fonction de la variable form.

sur la page accueil.php j'ai 2 boutons un avec la variable et l'autre sans cela passe par l'url.

le problème est si je suis en mode plein écran et que je clique sur le bouton plein écran ma fenetre se ferme.
ainsi si je suis en mode reduit et que je clique sur mode réduit elle se ferme aussi.

je vois pas pourquoi elle ferme et comment y remédier ?? :cry:

Posté : 19 déc. 2006, 10:32
par Cyrano
En voyant ton code, on pourrait le simplifier de la manière suivante :
<?php
if($_GET['form'])
{
    $fenetre = "'http://parch/index2.php', 'popup','width=200,height=200,top=200,left=400,toolbar=yes,location=0,directories=yes,status=0,menubar=0,scrollbars=yes,copyhistory=0,resizable=yes'";
}
else
{
    $fenetre = "'http://parch/index2.php', 'WindowName', 'fullscreen=yes'";
}
?>
<script language="javascript">
  window.open(<?php echo($fenetre); ?>); 
  window.opener = self; 
  self.close(); 
</script>
Mais je ne comprends pas trop l'intérêt de fermer la fenêtre parente :-k

Posté : 19 déc. 2006, 10:37
par fred9999
l'intéret est qu'il ne reste pas une page blanche derriere. :wink:

je comprend pas trop j'ai fait des modifs :

je ferme la page puis je l'ouvre avec le lien mais ça fonctionne pas sous ie6.

AArr gghh :x

Posté : 19 déc. 2006, 10:39
par fred9999
en gros je fais ça maintenant tout marche nickel sous firefox mais pas sous winDOB
<?php
if($_GET['form'])
{
echo"
<script language=\"javascript\">
window.close();
window.open('http://parch/index2.php', 'popup','width=200,height=200,top=200,left=400,toolbar=yes,location=0,directories=yes,status=0,menubar=0,scrollbars=yes,copyhistory=0,resizable=yes');  
</script>";
}
else
{
echo"<script language=\"javascript\">
window.close();
window.open('http://parch/index2.php', 'WindowName', 'fullscreen=yes'); 
</script>"; 
}
?>
d'ailleur comment supprimer le message de fermeture des pages??

Posté : 19 déc. 2006, 10:41
par Cyrano
Et si au lieu d'ouvrir une nouvelle fenêtre tu faisait une redirection : donc au lieu de window.open, tu fais un window.location

Posté : 19 déc. 2006, 10:44
par fred9999
il bug sur le window.location il ne traite pas la commande

Posté : 19 déc. 2006, 10:55
par Cyrano
Sans montrer le code, tu auras du mal à faire trouver une erreur quelconque :-k

Posté : 19 déc. 2006, 12:26
par fred9999
comme ça :wink: :wink: :
<?php
if($_GET['form'])
{
echo"
<script language=\"javascript\">
window.close();
window.location('http://parch/index2.php', 'popup','width=200,height=200,top=200,left=400,toolbar=yes,location=0,directories=yes,status=0,menubar=0,scrollbars=yes,copyhistory=0,resizable=yes'); 
</script>";
}
else
{
echo"<script language=\"javascript\">
window.close();
window.location('http://parch/index2.php', 'WindowName', 'fullscreen=yes'); 
</script>"; 
}
?>

Posté : 19 déc. 2006, 12:57
par Cyrano
le window.location n'ouvre pas une nouvelle fenêtre et encore moins un pop-up. Donc simplifions :
<?php
if(isset($_GET['form']))
{
    $page = 'http://parch/index2.php';
}
else
{
    $page = 'http://parch/index2.php';
}
?>
<script language="javascript">
window.location.href='<?php echo($page); ?>'; 
</script>

Posté : 19 déc. 2006, 13:23
par fred9999
oui mais la ça sert à rien !! :?

moi je gère la taille d'affichage avec le index.php

si l'affichage n'es pas gérer autant que je renomme index2.php en index.php ça ira + vite.

Posté : 19 déc. 2006, 13:32
par Cyrano
Précisément : ouvrir une nouvelle fenêtre pour fermer la fenêtre appelante ne sert à rien non plus :-k

Posté : 19 déc. 2006, 15:37
par fred9999
l'inverse plutot ???

en fait je ferme la page appelante pour ouvrir mon autre page.
<?php 
if($_GET['form']) 
{ 
echo" 
<script language=\"javascript\"> 
window.close(); 
window.open('http://parch/index2.php', 'popup','width=200,height=200,top=200,left=400,toolbar=yes,location=0,directories=yes,status=0,menubar=0,scrollbars=yes,copyhistory=0,resizable=yes');  
</script>"; 
} 
else 
{ 
echo"<script language=\"javascript\"> 
window.close(); 
window.open('http://parch/index2.php', 'WindowName', 'fullscreen=yes');  
</script>";  
} 
?>
mais bon mon problème n'es pas la mais si je repasse la variable form toutes les pages se ferment