Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/07/2007, 10h54   #1
Invité régulier
 
Inscription : août 2005
Messages : 21
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 21
Points : 9
Points : 9
Par défaut Variable de session initialisée dans une iframe

Bonjour !

J'ai un truc que je ne comprends pas :
- j'ai une page simple avec une iframe :
test.php
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
<?
	session_start();	
	$_SESSION = array();
?>
<html>	
	<body>
		<iframe id="iframe_test" width="100" height="100"  scrolling="no" leftmargin="0" frameborder=1
			topmargin="0" marginwidth="0" marginheight="0"  border=0 allowTransparency="true"
			src="test_iframe_content.php">
			</iframe>
			<div>
			<?
				echo $_SESSION["test"];
			?>
			</div>
	</body>
</html>
Dans le fichier test_iframe_content.php :
Code :
1
2
3
4
5
6
 
<?
   session_start();
   $_SESSION["test"] = 'contenu variable de session';
   echo $_SESSION["test"];
?>
Problème :
Le
Code :
echo $_SESSION["test"];
dans le fichier test.php affiche une variable vide, alors que dans l'iframe, la variable de session est bien initialisée.
magdalena est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2007, 11h02   #2
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
c'est parce que le fichier "test.php" est exécuté avant le fichier "test_iframe_content.php"
dans l'ordre tu as ça :
  1. appel de la page test.php par le navigateur
  2. calcul de la page test.php sur le serveur et envoi au navigateur
  3. le navigateur analyse le code html et voit qu'il doit appeler le fichier dans l'iframe
  4. appel de la page test_iframe_content.php par le navigateur
  5. calcul de la page test_iframe_content.php sur le serveur et envoi au navigateur

il faut éviter d'utiliser des frames et des iframes. dis nous ce que tu veux faire on pourra peut-être te donner des conseils
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2007, 11h06   #3
Invité régulier
 
Inscription : août 2005
Messages : 21
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 21
Points : 9
Points : 9
Ben en fait je modifie des scripts existants.
Je comprends maintenant pourquoi j'ai trouvé dans le script de l'iframe un reload javascript de la page principale.
je vois que la seule solution est de supprimer l'iframe.

Est-il possible d'indiquer au navigateur d'attendre le chargement de l'iframe pour charger le reste de la page d'appel ?
magdalena est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h01.


 
 
 
 
Partenaires

Hébergement Web