2010-06-15 4 views
0

pour des raisons de développement (travailler avec facebook-connect) je mets le iframe de connexion dans un iframe. de cette façon, je suis capable de travailler sur le connect-chose indépendant de mon ip et ne dois pas développer sur le live-server. L'iframe contenant le iframe du bouton de connexion se trouve sur mon serveur et accède au même serveur db que la version développeur (la version développeur est exécutée sur localhsot).comment échanger des variables entre extern iframe et site

aussi loin que bon ... mais

comment puis-je laisser le site parent sache que l'utilisateur est connecté, de sorte que je reçois son profil d'image displayd comme réaction à cela? Comment puis-je réagir généralement sur une action/événement/JS dans un iframe? Y a-t-il un moyen? Est-ce que le iframe peut publier des données sur le site parent? comme un horodatage et fb_userid? Si le matériel iframe ne fonctionne pas ... J'ai l'habitude d'enregistrer l'ip dans le fb_userid (à db) et de vérifier les correspondances ... mais je n'aime pas cette idée.

Répondre

0

Eh bien merci à @Sarfraz Ahmed, votre poste a été l'inspiration pour ma solution:

Avec le src de l'iframe, j'envoie l'id de session en cours comme paramètre GET.

<iframe src="http://www.online_host.com/scriptxy.php?id_session=<?=session_id()?>"></iframe> 

Ensuite, le script dans l'iframe fait un rappel après une action, comme

<script> 
location.href="http://localhost/localscript.php?id_session=<?=$_REQUEST['id_session']?>&parameters_here=something"; 
</script> 

Il faut noter, que le nom des paramètres GET n'a pas à être « sessionid » ou « sessid » , car cela n'est pas autorisé avec les installations les plus apaches.

En PHP localscript.php, vous faites quelque chose comme:

session_id($_REQUEST['id_session']); 
session_regenerate_id(); 

$_SESSION['param1'] = $_REQUEST['param1']; 
... 

Maintenant, vous pouvez accéder à la sessiondata dans votre PHP en cours d'exécution au niveau local en cours. Avec un intervalle de requête AJAX déclenché, cela fonctionne assez bien pour le développement. Le fait est que j'utilise CodeIgniter (avec PostgreSQL et le plugin de session ecko) et que j'ai un problème de mémoire dans le script du pilote PostgreSQL, ce que je n'ai pas compris jusqu'à présent.

1

Vous pouvez passer des variables à des trames en utilisant le format de chaîne de requête par src attribut de l'iframe, par exemple:

<iframe src="mysite.com?var=test"............> 
+0

cool, mais j'ai besoin de l'inverse – helle

Questions connexes