Page 1 sur 1

Problème rôle affichage user

Posté : 16 août 2022, 19:47
par Oklm66
Bonjour à tous
je débute le php mysql en ce moment je suis sur l'apprentissage des gestions des rôles .Mon but est d'afficher un élément selon le rôle de l'utilisateurs. Mais cela ne marche pas ... , Avez vous une idée de pourquoi ? Je cherche mais je ne trouve absolument pas ...


Ma page login.php

Code : Tout sélectionner

session_start(); if (isset($_POST['username'])){ $username = stripslashes($_REQUEST['username']); $username = mysqli_real_escape_string($conn, $username); $password = stripslashes($_REQUEST['password']); $password = mysqli_real_escape_string($conn, $password); $query = "SELECT * FROM `users` WHERE pseudo='$username' and mdp='$password'"; $result = mysqli_query($conn,$query) or die(mysql_error()); $rows = mysqli_num_rows($result); if($rows==1){ $_SESSION['username'] = $username; $_SESSION['role'] = $result['role']; // Le role récupérer dans ta requête $query header("Location: HomeBackend.php"); }else{ $message = "Le nom d'utilisateur ou le mot de passe est incorrect."; } }

Ma page stat.php (Ou je souhaite afficher l'élément)

Code : Tout sélectionner

<?php if ( $_SESSION['role'] == "Admin" ): ?> <h1> <?php echo $NBUSERS ?> utilisateurs inscrit sur le site </h1> <?php endif; ?>

Re: Problème rôle affichage user

Posté : 16 août 2022, 22:25
par or 1
https://www.php.net/manual/fr/mysqli.query.php
"Pour des requêtes réussites qui produisent un jeu de résultat tel que SELECT, SHOW, DESCRIBE ou EXPLAIN, mysqli_query() retournera un objet mysqli_result."

$_SESSION['role'] = $result['role']; // Le role récupérer dans ta requête $query
sous entend que $result est un tableau, ce qui n'est pas le cas.

d'où : https://www.php.net/manual/fr/mysqli-re ... ch-row.php ou une autre fonction semblable.