php javascript - Programmation
Marsh Posté le 20-07-2001 à 12:14:08
Ben çà à l'air de marcher. 
 
Bon, juste une remarque, faut bien quand même, non ? 
 
Pourquoi envoyer la fonction javascript au 2éme passage ? 
 
<?  if ( isset( $TailleX ))  
      {  
        setcookie("Resolution","$TailleX,$TailleY" );  
        echo"je suis là";  
        header("Location : pagecode.php" );  
      }  
   else  
      {  
echo"<HEAD>   
<SCRIPT language='javascript'>   
//fonction permettant de récupérer la taille de l'écran de l'utilisateur  
function RecupTaille()   
{   
   document.forms[0].TailleX.value = screen.width;   
   document.forms[0].TailleY.value = screen.height;   
   document.forms[0].submit();   
   return true;   
}   
</SCRIPT>   
</HEAD>   
<BODY onload='return RecupTaille();'>   
<FORM action='index.php' METHOD='POST'>   
   <INPUT TYPE='HIDDEN' NAME='TailleX'>   
   <INPUT TYPE='HIDDEN' NAME='TailleY'>   
</FORM>   
</BODY> ";  
}  
?> 
Marsh Posté le 20-07-2001 à 13:44:32
j'ai cetet erreur là? 
Warning: Cannot add header information - headers already sent by (output started at c:\program files\easyphp\www\test\index.php:4) in c:\program files\easyphp\www\test\index.php on line 5 
Marsh Posté le 20-07-2001 à 15:00:05
Heu, oui, c'est normal ! il faut pas d'echo, print ou tout code HTML avant un appel à header ! 
 
Là çà devrait marcher ! 
 
<?  if ( isset( $TailleX ))   
     {   
       setcookie("Resolution","$TailleX,$TailleY" );   
       // echo"je suis là";   
       header("Location : pagecode.php" );   
     }   
  else   
     {   
echo"<HEAD>    
<SCRIPT language='javascript'>    
//fonction permettant de récupérer la taille de l'écran de l'utilisateur   
function RecupTaille()    
{    
  document.forms[0].TailleX.value = screen.width;    
  document.forms[0].TailleY.value = screen.height;    
  document.forms[0].submit();    
  return true;    
}    
</SCRIPT>    
</HEAD>    
<BODY onload='return RecupTaille();'>    
<FORM action='index.php' METHOD='POST'>    
  <INPUT TYPE='HIDDEN' NAME='TailleX'>    
  <INPUT TYPE='HIDDEN' NAME='TailleY'>    
</FORM>    
</BODY> ";   
}   
?> 
Marsh Posté le 20-07-2001 à 15:58:39
Non, il reste pas sur index.php ! 
 
Simplement, en faisant : 
setcookie("Resolution","$TailleX,$TailleY" );  
et 
header("Location : pagecode.php" );  
dans le même script, le cookie n'est pas envoyé au client puisque la page est redirigée tout de suite. Donc: 
 
index.php : 
| Code : 
 | 
 
 
et pagecode.php : 
| Code : 
 | 
 
 
Bon, cette fois j'ai testé et çà marche ! 
Marsh Posté le 20-07-2001 à 16:52:11
moi il me met un erreur 
 
Warning: Cannot add header information - headers already sent by (output started at c:\program files\easyphp\www\test\pagecode.php:1) in c:\program files\easyphp\www\test\pagecode.php on line 7 
 
Warning: Cannot add header information - headers already sent by (output started at c:\program files\easyphp\www\test\pagecode.php:1) in c:\program files\easyphp\www\test\pagecode.php on line 8 
$Resolution = 1024 x 768 
Marsh Posté le 20-07-2001 à 16:59:04
Il dit que c'est en ligne 1 qu'un output fout le merdier. 
 
En ligne 1, y'a : 
<?php 
 
J'ai vu que chez toi tu utilise le short tag <? au lieu de <?php 
 
C'est peut-être çà ! 
 
Sinon, montre moi exactement ta version de pagecode.php si c'est pas EXACTEMENT la même que moi ! 
Marsh Posté le 20-07-2001 à 17:02:22
excuse sorry c'est de ma faute j'essai de faire des tests partout et j'oublie des echo avant 
par contre pour mon histoir excel tu sais? 
Marsh Posté le 20-07-2001 à 11:43:57
<HEAD>
<SCRIPT language='javascript'>
//fonction permettant de récupérer la taille de l'écran de l'utilisateur
function RecupTaille()
{
document.forms[0].TailleX.value = screen.width;
document.forms[0].TailleY.value = screen.height;
document.forms[0].submit();
return true;
}
</SCRIPT>
<? if ( isset( $TailleX ))
{
setcookie("Resolution","$TailleX,$TailleY" );
echo"je suis là";
header("Location : pagecode.php" );
}
else
{
echo" </HEAD>
<BODY onload='return RecupTaille();'>
<FORM action='index.php' METHOD='POST'>
<INPUT TYPE='HIDDEN' NAME='TailleX'>
<INPUT TYPE='HIDDEN' NAME='TailleY'>
</FORM>
</BODY> ";
}
?>