Salut tout le monde
D’abord un grand merci à Grafi pour la qualité de cette formation.
Je viens de finir cette série de tutorial " Développer un site de A à Z" je me familiarise un peu avec l’architecture MVC je suis encore débutant est je commence à développer mais propre besoin et je tombe sur un problème de boucle infini que je n’arrive pas à résoudre ca fais 2 jour, Bon le besoin que je développe et de rendre l’application fermer comme Facebook ou Twitter par exemple tous les pages son fermer l’utilisateur ne peut pas accéder sont être authentifier.
Donc je dois développer le scripte au niveau du fichier " hook.php" mais le problème je vois que l’application tourne dans une boucle infini voile la condition que j’ais ajouter :
<?php
if($this->request->prefix =='admin'){
$this->layout = 'admin';
if(!$this->Session->isLogged() || $this->Session->user('role') != 'admin'){
$this->redirect('connexion.php');
}
}
if(!$this->Session->isLogged()){
$this->redirect('connexion.php');
}
?>
J’ai bien essayé avant de poster ma question et merci d’avance pour vos repenses.
Le code que tu m’as donné tourne dans une boucle infinie j’ais tester avant ce code car quand la redirection redirige l’utilisateur a la page connexion.php la condition dans le fichier hook.php est tester une autre fois donc une autre redirection a la page connexion.php et ça tourne j’ais modifier le code et ça marche pour le moment merci infiniment @Benjamin Garcia BP pour ton aide.
<?php
if(!$this->Session->isLogged()){
if($this->request->url != '/connexion.php'){
$this->redirect('connexion.php');
}
}else{
if($this->request->prefix =='admin'){
$this->layout = 'admin';
if(!$this->Session->isLogged() || $this->Session->user('role') != 'admin'){
$this->redirect('connexion.php');
}
}
}
?>
Salut, essaye sa :
<?php
if($this->request->prefix =='admin'){
$this->layout = 'admin';
if(!$this->Session->isLogged() || $this->Session->user('role') != 'admin'){
$this->redirect('connexion.php');
}
}else{
if(!$this->Session->isLogged()){
$this->redirect('connexion.php');
}
}
?>
Bonjour, il suffisait juste de mettre un "else" au niveau du "if($this->request->prefix =='admin'){"
Le problème que je dois fermer les pages du site n'importe quelle page comme Facebook tous les pages ne sont pas accessible que si le membre est connecté
Par exemple j’ai ces pages dans mon application
www.monsite.com/profil.php
www.monsite.com/message.php
www.monsite.com/edit.php
www.monsite.com/*.php
Tous c’est page l’utilisateur doit être connecté pour les voire comme l’accès au page qui gère la gestion des articles je pense que c’est bien expliqué je peux faire un teste dans la page index du webroot et je vais régler le problème mais je veux faire comme le système que Grafi a fait dans la vidéo pour avoir une structure mvc propre une manipe dans le fichier hook.php et tous et réglé
Re, essaye sa alors :
<?php
if(!$this->Session->isLogged()){
$this->redirect('connexion.php');
}else{
if($this->request->prefix =='admin'){
$this->layout = 'admin';
if(!$this->Session->isLogged() || $this->Session->user('role') != 'admin'){
$this->redirect('connexion.php');
}
}
}
?>
Explication:
Il vérifie si tu est loguer (sinon il te redirige), et vérifie si tu a le préfixe "admin" (sinon il te redirige).