Iframe et sessions PHP

Résolu
yogogo -  
 yogogo -
Bonjour à tous !

Je vais essayer de faire simple : j'ai une page 1 avec une frame dedans qui contient une page 2. Si je crée une session dans la page 1, est-ce que j'aurais accès à cette même session depuis ma frame ou est ce que la session de la frame sera distinct de celle de la page 1 ?

En espérant avoir été clair
Configuration: Windows Vista
Firefox 3.0.10

9 réponses

  1. Mimiste Messages postés 1159 Statut Membre 206
     
    Salut

    Tu aura bien sur acces a la session depuis ta frame si elle appelle une page sur le meme serveur. Les sessions sont géré coté serveur.
    0
  2. guizmail56 Messages postés 74 Statut Membre 2
     
    j'ai pa tout compris... tes pages sont en php? alors plutot que de faire des frames utilise la fonction
    <?php

    require 'nomdelapage2.php';

    ?>

    ca fonctionnera mieu et ce qu'il se passera c'est que la page 2 s'integrera completement dans la page 1, je sais pas si ct ca que tu voulais?
    0
  3. yogogo
     
    merci pour vos réponses. Je me passerais bien des frames, mais j'ai un script javascript qui nécessite que la page sur laquelle il s'exécute soit "isolée" (concrètement mon script utilise les distances par rapport au bord de la page, et si je fais un include, il ne se basera pas sur les distances des bords de la page incluse, mais de la page qui inclus)
    0
  4. yogogo
     
    Je viens de faire l'essai est ça ne marche pas, j'ai l'impression que la session de la frame n'est pas la même que celle de la page dans laquelle elle est appelée.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Mimiste Messages postés 1159 Statut Membre 206
     
    Ben, le mieux c'est que tu montre comment tu a fait avec un peu de code ?
    0
  7. yogogo
     
    Il s'agit en fait d'un module pour Joomla!. Mais j'ai fais un test en affichant les id de sessions dans la page 1 et la frame : résultat ce sont des id différents, il y a donc bien deux sessions différentes, et pourtant les pages sont sur le même serveur !

    page 1 : 
    
    <?php // no direct access
    defined('_JEXEC') or die('Restricted access'); 
    
    echo session_id();
    
    ?>
    
    <IFRAME src="./components/com_cadre/cadre/index.php" width=720 height=800 scrolling=auto frameborder=0 ></IFRAME>


    index.php :

    <?php
    session_start();
    
    echo session_id();
    
    ?>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
       <title>Bienvenue sur mon site !</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    
       <!-- Ci-dessous le design "par défaut" du site -->
       <link rel="stylesheet" media="screen" type="text/css" title="normal" href="frame.css" />
    </head>
    
     
       <body>
    		<div id = "accueil" align = center>
    			<form action="./cadre.php" method="post" ENCTYPE="multipart/form-data">
    				<h1>Dimensions de la photo &agrave; imprimer :</h1>
    				<p>Largeur (cm) : 	<input type="text" id="larg" name="larg" value="" /><br>
    				<br>
    				<p>Hauteur (cm) : 	<input type="text" id="haut" name="haut" value="" /></p><br>
    								<input type=file name="image">
    				<br>
    				<br>
    				<input class=classbouton type="submit" value="" />
    			</form>
    		</div>
    	</body>
    </html>
    0
  8. yogogo
     
    désolé pour le up mais j'ai vraiment besoin d'aide : j'ai créé une deux pages de test suivantes :

    page 1 :
    <?php
    
    session_start();
    
    echo session_id();
    
    ?>
    
    <IFRAME src="./page2.php" width=600 height=200 scrolling=auto frameborder=1 > </IFRAME>


    page 2 :
    <?php
    
    session_start();
    
    echo session_id();
    
    ?>


    et là la session est la même que l'on soit dans l'Iframe ou non... Je ne comprends plus rien :(
    0
  9. Mimiste Messages postés 1159 Statut Membre 206
     
    Salut

    Le souci vient de joomla, il integre lui meme son propre gestionnaire de session et comme tout ce qui touche a joomla, c'est l'usine et autant c'est pas possible d'utiliser une session faite par joomla dans un script externe

    Je pense que tu devrai te lancer dans la conception d'un module joomla plutot que d'utiliser un fichier completement externe dans ta frame, sa corrigerai certainement ce probleme
    0
  10. yogogo
     
    Ok !

    Ca va sacrément me compliquer la tâche, mais si il n'y a rien à faire pour les frames...

    Merci de l'aide en tous cas :)
    0