JS - Window.onMessage
Posté : sam. 6 juin 2015 00:38
Bonjour,
J'ai un site structuré de cette façon : http://img15.hostingpics.net/pics/653001Sanstitre.png.
J'aimerais que l'utilisateur soit obliger d'aller sur le fichier index.php pour pourvoir voir le contenue du fichier accueil.php (qui se trouve dans l'iframe). Malheureusement, si l'utilisateur connait le nom du fichier "accueil.php", il pourra y accéder via l'URL sans passer par l'index.php
Donc j'ai réussi à faire communiquer mon index.php avec mon iframe en Javascript.
Index.php (Celui-ci envoie) :
Sauf j'aimerais que si l'utilisateur ne passe pas par index.php (donc aucun message reçu et donc aucune alert), l'iframe le sait quand même et redirige l'utilisateur sur index.php.
La function window.onmessage s'exécute n'importe quand donc je ne peux pas l'exécuter moi même.
Cordialement,
J'ai un site structuré de cette façon : http://img15.hostingpics.net/pics/653001Sanstitre.png.
J'aimerais que l'utilisateur soit obliger d'aller sur le fichier index.php pour pourvoir voir le contenue du fichier accueil.php (qui se trouve dans l'iframe). Malheureusement, si l'utilisateur connait le nom du fichier "accueil.php", il pourra y accéder via l'URL sans passer par l'index.php
Donc j'ai réussi à faire communiquer mon index.php avec mon iframe en Javascript.
Index.php (Celui-ci envoie) :
Code : Tout sélectionner
Accueil .php (Celui-ci reçoit) :
document.getElementById("iframe").contentWindow.postMessage("test", "http://localhost");
Code : Tout sélectionner
Si mon index.php envoie le message, mon iframe le reçoit et j'ai l'alert qui s'affiche. Donc je sais que l’utilisateur est bien passé par l'index.php pour voir l'iframe (jusqu’à la, normal). window.onmessage = function(event) {
if(event.origin !== "http://localhost") { return; }
alert(event.data);
};
Sauf j'aimerais que si l'utilisateur ne passe pas par index.php (donc aucun message reçu et donc aucune alert), l'iframe le sait quand même et redirige l'utilisateur sur index.php.
La function window.onmessage s'exécute n'importe quand donc je ne peux pas l'exécuter moi même.
Cordialement,