Bonjour à toutes et à tous,
Mon contexte :
J'ai développé un site Internet pour une Université. Quand un utilisateur (qui est étudiant dans cette université) s'inscrit sur le site et SE CONNECTE il a accès au moodle(fonctionnalité qui permet de suivre des cours en ligne).
L'arborescence est ainsi www.monsite.eu/moodle/index.php
Le moodle à son propre index.php et possède une page d'accueil avec une partie espace membre (login/mdp). Donc ce dernier utilise un session_start().
Ce que je veux faire :
J'aimerai que le moodle ne soit accessible uniquement pour les membres inscrit sur le site.
De ce fait lorsqu'un visiteur tape dans la barre d'url : 'www.monsite.eu/moodle' il à accès au moodle sans se connecter sur mon site (ce qui est tout à fait normal mais que j'aimerai bloquer)
Ma solution :
J'ai tout d'abord voulu là faire classique avec une session_start(), mais comme dit précédemment le moodle utilise déjà la sienne et donc si je fais cela, ils entrent en conflit et c'est le foutoirs.
J'ai donc réalisé une fonction qui me permet de créer un fichier, dans un dossier de mon ftp, au format '.IP' et dont le nom du fichier et l'adresse ip de l'utilisateur (grâce à un $_SERVER['HTTP_HOST']), dès lors que le membre se connecte sur mon site.
Exemple : Polo se connecte sur mon site ====> le fichier '186.2.125.14.IP' se créer dans mon ftp.
Et via une condition if je dit : si l'ip de l'utilisateur qui va sur le moodle et égale au nom du fichier créer dans le ftp alors on lui accorde l'accès au moodle sinon une redirection à la page principal de mon site.
Ensuite quand l'utilisateur se déconnecte, le fichier '186.2.125.14.IP' est supprimer grâce à la méthod unlink()
Questions :
Quand un membre, connecté sur mon site, quitte son navigateur sans se déconnecter au préalable. Le fichier ne se supprimer pas car il faut cliquer sur le lien se déconnecter.
Comment supprimer le fichier même si le membre décide de quitter son navigateur ou décide d'aller sur un autre site ?
Et enfin la méthode que j'ai effectué ici est-elle sécurisé ou y a t-il un autre moyen plus simple de faire ce que je souhaite ?
En vous remerciant de l'attention que vous porterez à ma requête, amicalement
Partager