Espace Admin en PHP et MySQL avec gestion des utilisateurs
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

Espace Admin en PHP et MySQL avec gestion des utilisateurs



  1. #1
    ameb2908

    Espace Admin en PHP et MySQL avec gestion des utilisateurs


    ------

    Bonjour, je m'explique, c'est la création d'un espace Admin

    avec des rôles bien précis. (Aucun, Editeur, Administrateur). Là ou je bute,

    en fonction des identifiants renseignés, on est redirigé vers la page admin/index.php

    avec l'affichage d'un menu et les liens qui vont avec.

    "Aucun" a accès au lien Accueil, Site Web, Déconnexion.

    "Editeur" en plus de celles-ci, Insertion Image, Mise à jour Image, Suppression de l'image.

    "Administrateur" en plus de celles-ci, Création d'un utilisateur.

    Je n'ai aucun message d'erreurs, var_dump me renvoie un booléen FALSE.

    Et j'ai juste Site Web et Déconnexion qui s'affichent.

    Si quelqu'un pourrais m'aider, ça serait sympas. Bonne soirée à tous.

    class/userManager.php

    Code:
    class userManager {
    
        private $db;
     
        public function __construct($db) {
    
            $this->setDb($db);
        }
    
        public function setDb(PDO $dbh) {
    
            return $this->db = $dbh;
        }
    
        public function displayMenu($user_role_id) {
    
             try {
    
                $sql = 'SELECT A.name, A.slug
                        FROM user_action AS A
                        INNER JOIN user_permission AS P
                        ON A.actionID = P.action_id
                        INNER JOIN user_role AS R
                        ON P.min_role_id = R.level
                        AND P.min_role_id < :user_role_id';
    
                        echo $sql;
    
                $stmnt = $this->db->prepare($sql);
                $stmnt->execute(array(
    
                    ':user_role_id' => $user_role_id
                ));
    
                while($row = $stmnt->fetch(PDO::FETCH_ASSOC)) {
    
                    $menu_data[] = $row;
                }
    
                if(isset($menu_data)) {
    
                    return $menu_data;
                }
                else {
    
                    return false;
                }
            }
            catch(PDOException $e) {
    
                echo 'Une erreur est survenue lors de la récupération d\'une des données dans la base.<br>
                      Message d\'erreur : ' . $e->getMessage();
            }
        }
    
        public function checkUserPermission($action_slug, $user_role_id) {
    
            try {
            
                $sql = 'SELECT P.action_id, P.min_role_id
                        FROM user_permission AS P
                        INNER JOIN user_action AS A
                        ON A.slug = :action_slug
                        AND P.action_id = A.actionID';
                        
    
                $stmnt = $this->db->prepare($sql);
                $stmnt->execute(array(
    
                    ':action_slug' => $action_slug
                ));
    
                while($row = $stmnt->fetch(PDO::FETCH_ASSOC)) {
    
                    $min_role_id = $row['P.min_role_id'];
    
                    if($min_role_id > $user_role_id) {
    
                        return false;
                    }
                    else {
    
                        return true;
                    }
                }
            }
            catch(PDOException $e) {
    
                echo 'Une erreur est survenue lors de la récupération d\'une des données dans la base.<br>
                      Message d\'erreur : ' . $e->getMessage();
            }
        }
    }

    -----
    Images attachées Images attachées

  2. #2
    ameb2908

    Re : Espace Admin en PHP et MySQL avec gestion des utilisateurs

    Je joins mon projet.

    projet-images-en-poo-et-pdo.zip

  3. #3
    vgondr98

    Re : Espace Admin en PHP et MySQL avec gestion des utilisateurs

    Comment tu fait pour lire tes erreurs ?
    Pour ma part, toutes les erreurs sont écrites dans un fichier error_log qui se trouve dans le dossier apache sur mon serveur.

  4. #4
    umfred

    Re : Espace Admin en PHP et MySQL avec gestion des utilisateurs

    Dans le ON des jointures c'est pour indiquer la liaison des champs entre les tables; ensuite, il faut un WHERE pour filtrer les résultats.
    Pour vérifier, rentre tes requêtes dans phpmyadmin et vois si le résultat correspond à tes attentes.

  5. A voir en vidéo sur Futura
  6. #5
    ameb2908

    Re : Espace Admin en PHP et MySQL avec gestion des utilisateurs

    Bonsoir, le résultat correspond à mes attentes mais pas sur la page.

  7. #6
    vgondr98

    Re : Espace Admin en PHP et MySQL avec gestion des utilisateurs


  8. #7
    ameb2908

    Re : Espace Admin en PHP et MySQL avec gestion des utilisateurs

    Voici une capture d'écran sur la page admin/index.php

    Nom : Capture.jpg
Affichages : 1217
Taille : 46,4 Ko
    Dernière modification par ameb2908 ; 06/05/2022 à 13h51.

  9. #8
    vgondr98

    Re : Espace Admin en PHP et MySQL avec gestion des utilisateurs

    Bonjour, j'ai un peu regardé ton fichier log_error_php.txt à la racine de ton projet. Apparemment, c'est là que les erreurs de ton programme sont redirigés.
    Il y a des messages d'erreurs à l'intérieur du style : PHP Fatal error: Uncaught ArgumentCountError: Too few arguments to function imageManager::readImageData(), 0 passed in C:\wamp64\www\projet-images

    Est-ce que tu as déjà corrigé ces erreurs-là ?

    Si c'est le cas, il faudrait supprimer le contenu de ce fichier pour pouvoir débugger plus facilement. Tu peux ajouter des error_log() dans ton script pour vérifier l'état de tes variables. Les données seront écrites dans le fichier log_error_php.txt.

Discussions similaires

  1. probleme avec un mysql
    Par soso590230 dans le forum Programmation et langages, Algorithmique
    Réponses: 9
    Dernier message: 30/04/2015, 08h03
  2. Executer une commande sur parc réseau avec droit admin
    Par Krakenn dans le forum Internet - Réseau - Sécurité générale
    Réponses: 3
    Dernier message: 30/11/2013, 20h41
  3. Gestion de comptes et droits utilisateurs
    Par Tifoc dans le forum Internet - Réseau - Sécurité générale
    Réponses: 2
    Dernier message: 09/05/2008, 09h58
  4. gestion projet : Mysql/php et drag and drop
    Par inviteb271042d dans le forum Logiciel - Software - Open Source
    Réponses: 20
    Dernier message: 18/04/2008, 00h30
  5. test avec PHP MySQL
    Par SunnySky dans le forum Internet - Réseau - Sécurité générale
    Réponses: 2
    Dernier message: 18/02/2007, 02h18