Bonjour,

J'ai suivis les 7jours du tuto, et j'ai regardé les sources cependant je suis perdu ^^,
j'ai modifier les fichiers 'UsersController', 'config' et ajouter de nouveaux fichiers: 'membre' et 'membres'.

Mon système est simple,
http://site.fr/users/membre/admin-2 => affiche le membre admin et son user_id '2'.
http://site.fr/users/membres/ => affiche une page qui récupère tout les membres inscrits et lorsque l'on clique sur le pseudo cela nous redirige sur son profil qui est mon exemple affiche au dessus.
http://site.fr/users/membre/ => est défini dans le 'config' comme Router vers http://site.fr/users/membres/ pour éviter les erreurs.

Cependant et la c'est mon problème, quand on écrit: http://site.fr/users/membre/nimportequoi, je contient plein d'erreur sur ma page plus 'page introuvable', j'aimerais seulement avoir Page introuvable qui s’affiche et non tout les problèmes php et mysql.

Fichier UsersController:

/**
    * liste les membres
    **/
    function membres(){
        $perPage = 10; 
        $this->loadModel('Profil');  
        $d'users'] = $this->Profil->find(array(
            'order' => 'Profil.id DESC',
            'limit' => ($perPage*($this->request->page-1)).','.$perPage,
        ));
        $this->set($d);
    }

    /**
    * Affiche un membre en particulier
    **/
    function membre($id,$pseudo){
        $this->loadModel('Profil');
        $d'users'] = $this->Profil->findFirst(array(
            'conditions' => array('Profil.id'=>$id,'Profil.pseudo'=>$pseudo),
            'join' => array('users as User'=>'User.id=Profil.user_id')
        )); 
        $d'matos'] = $this->Profil->findFirst(array(
            'conditions' => array('Profil.id'=>$id,'Profil.pseudo'=>$pseudo),
            'join' => array('materiels as Matos'=>'Profil.user_id=Matos.user_id'),
        )); 
        if(empty($d'users'])){
            $this->e404('Page introuvable'); 
        }
        if($pseudo != $d'users']->pseudo){
            $this->redirect("profil/view/id:$id/pseudo:".$d'users']->pseudo,301);
        }
        $this->set($d);
    }

Fichier config:

Router::connect('membres','users/membres');
Router::connect('users/membre','users/membres');
Router::connect('users/membre/:pseudo-:id','users/membre/id:([0-9]+)/pseudo:([a-z0-9\-]+)');

Merci de votre aide.
Cordialement Alexis.

1 réponse


Bonsoir, et tu sous XAMPP?