Fin session jeu sur navigateur
Résoluj'ai un jeu en développement, qui utilise des cookies et des frames (aucun rapport je sais mais ca va venir)
mes cookies sont bons pour une periode assez longue (un an :p)
ce que je voudrai faire, c'est qu'au bout de disons 20 minutes d'inactivité sur le site, l'utilisateur soit rediriger vers la page d'accueil ou il devra a nouveau entrer login/mdp.
Je sais pas du tout comment faire (le seul moyen qui me vient a l'esprit serait de tester la date d'un cookie et de rediriger a l'accueil avec suppression du cookie si il est plus vieux que 20 minutes, ce qui impliquerait qu'il faudrait le réactualiser dans toute mes pages, ce qui en fait un bon paquet :/)
si quelq'un peut me mettre sur une voie, ca serait bien aimable ^^
Configuration: Windows XP Firefox 2.0.0.14
27 réponses
Plusieurs développeurs débattent d’un jeu en développement qui utilise cookies et frames et qui souhaite expulser automatiquement l’utilisateur après 20 minutes d’inactivité pour demander une nouvelle authentification. Le consensus des réponses privilégie d’éviter les frames et propose une redirection côté serveur, par exemple via header('Location:'.$url), plutôt que d’actualiser systématiquement les cookies. D’autres interventions évoquent l’usage de JavaScript pour déconnecter une session inactive ou la gestion par sessions côté serveur et cookies, avec des nuances sur la compatibilité et la complexité. En cas d’architecture multi-frames, une approche serveur unique évite les incohérences potentielles.
-
-
il y'a armagetron je crois.
-
bonjour
désolé de vous dérangé dans votre conversation mais quelqu'un d'entre vous connaitrait t-il le nom d'un jeux ou l'on conduit une moto futuriste qui laisse une trainée derriere elle infranchissable. Ce doit etre quelque chose comme tron machin.
Merci d'avance -
"30 pages de posts pour une ligne si peu compliquée"
Ouais enfin, à la base c'était une question de cookie hein ;) -
Comme l'a dit l'autre gars, yach les frames lol. Trop de troubles pour rien :P
-
j'ai essayé le script, il marche bien mais ca fait juste remettre la page index dans la frame, donc ca convient pas.
pour le target parent, et bien c'est finalement la simple ligne que je cherchai on dirait, les frames disparaissent bien et l'index s'affiche, 30 pages de posts pour une ligne si peu compliquée ;)
merci de votre aide, a++ -
Ecoute, j'ai pas tout lu car je n'ai pas le temps mais je te donne mon script JS et fais en ce que tu veux ;)
Si jamais ça aide, tant mieux sinon bon courage:
<!-- Script qui redirige automatiquement les utilisateurs non connectés sur la page de connexion -->
<script type="text/javascript">
function redirect() {
window.location="URL DE LA PAGE DE LOGIN"
}
setTimeout("redirect()",3000); // delai en millisecondes
</script>
Tu inclus juste ce code dans la page qui dit qu'il n'est pas loggé et ça va rediriger tout seul. Tu peux juste ajouter un texte d'avertissement dans la page si cela te tente.
Donc en fait tu valides:
si cookie existe/est valide:
tu affiche la page
sinon:
tu affiches ton message d'erreur et tu inclus le javascript.
-
Il s'agit d'une centaine de page, 500 c'est plus les heures passées dessus ^^
pour le JS je veux bien tenter de m'y mettre mais va falloir etre tres clair, j'y connais rien, donc si y'a des balises ou quoi que ce soit a mettre, faut me le dire, ca vous parait sans doute evident mais pour moi c 'est nouveau. -
bin mis a part l'impossibilité totale de revenir a l'index pour l'ensemble de la page, oui c'est problématique, mais je ne referai pas tout le travail juste pour eviter les frames.
d'autant plus que je pense qu'il existe bel et bien un moyen de revenir a l'index, je suis juste impressioné que personne ne sache comment faire.
et mis a part ce pb je vois toujours pas le probleme des frames, au moins, ce qu'il y'a dedans n'a pas a etre recharger a chaque page que l'on visite.-
"au moins, ce qu'il y'a dedans n'a pas a etre recharger a chaque page que l'on visite."
D'où l'intérêt de javascript et de XMLHTTPRequest qui permet entre autre de recharger des portions du flux html : https://www.toutjavascript.com/savoir/xmlhttprequest.php3
Evidemment c'est pas après 500 pages (ça me parait énorme, si c'est des petits fichiers de script php ton projet n'est certainement pas optimisé, sinon chapeau !) que tu vas refaire le projet, mais je vois mal comment depuis une page (ton iframe) tu veux recharger une page externe (conteneur) sans passer par du javascript.
-
-
le probleme me semble pourtant simple mais on dirati qu'il n'existe pas de solution egalement simple.
j'ai des frames, et je voudrais juste qu'il soit possible de revenir a l'index, mais que ca se fasse pas que dans une frame mais pour l'ensemble de la page (la j'arrive juste a faire qu'un frame contiennne l'accueil, qui aura ensuite d'autres frames etc, ca fait popuée russe quoi) -
bin pourquoi pas si le code est simple a mettre en place, mais je n'utilise pas de sessions mais des cookies, ca marcherait aussi ?
-
Moi j'utilise javascript lorsque l'utilisateur n'est plus loggué. S'il essaie de réaccèder la page alors que la variable de session n'est plus valide car il a été trop longtemps inactif, je charge une page qui dit qu'il doit se connecter et je fais un redirect javascript pour l'envoyer sur la page en question. Tu veux faire un truc du genre?
PS: les variables de session expire d'elles même après une trop longue inactivité alors pas besoin de le calculer :o -
oui mon site est en ligne mais il faut s'enregistrer pour voir le probleme (y'a pas de confirmation ou autre pour l'inscription, c tout bidon :p) l'adresse est http://makkari.free.fr
mais tout ce qu'il me faudrait c'est une ligne qui fasse comme un include ou un header mais avec une option target. -
bah deja je vois pas la ligne a ecrire, ou l'ecrire, avec des balises ou non etc, je connais strictement quedal en JS (en JS j'ai juste réussi a copier coller un script de compteur qui marche pas completement)
ajouter document.location a mon lien je suis pas sur que ca suffise (ca donnerait header('Location:'.$url.document.location); suis pas sur que ca passe) -
je m'emmele deja bien les pinceaux avec le php, j'aimerai eviter le JS autant que possible (je m'en sers deja pour quelques compteurs et infobulles et ca me réussi pas trop ..)
il n'y vraiment pas moyen de trover une ligne de code equivalent a un "include("page.php" target =mainframe)' ?? -
Ben si tu n'affiches que des pages de ton propre serveur, il n'y a aucune raison d'utiliser des frames.
le probleme n'est pas la, mon jeu a des frames et je veux regler les problemes qu'il y'a, bien sur je pourrai refaire mon jeu, mais je ne vais pas me retaper 500 heures de code juste pour ne pas avoir des frames.
perso je vois pas le probleme avec les frames et personne ne m'a encore démontrer que c'etait défaillant ou autre.
sinon pour en revenir a la question initiale, peut on "targeter" un header ou un include ? (comme on le fait avec des href) si c'est possible ca me reglerait le probleme. -
Non, le probleme est exactement le même, la redirection se fait pour la frame, pas pour l'ensemble de la page ...
-
les frames c'est mal seulement si ca pose probleme, je vois ca marqué partout mais j'ai jamais vu de raison ...
je vais essayer le header, en esperant que ca fonctionne ;) merci -
En fait il subsiste un probleme :/
mon jeu est en plusieurs frame, et l'accueil n'a pas de frame, juste une page. le probleme c'est que je ne sais pas rediriger l'ensemble de la page (avec frame) vers une page unique (accueil). Si je fais une redirection vers l'accueil, seule la frame dans laquelle est ecrit la ligne de code va devenir l'accueil, laissant les autres frames telles quelles ...
existe t il un moyen de redirectionner l'ensemble des frames ? (comme si on retaper l'adresse dans l'url quoi) -
De rien, bonne nuit.
- 1
- 2