IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Check ID de session [PHP 5.6]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2017
    Messages : 11
    Par défaut Check ID de session
    Bonjour,

    Je me suis fait un petit portail perso d'identification sur MySql, tout fonctionne à merveille, maintenant je cherche à afficher une information différente lorsque que mon User 1 (admin) est loggué et ne pas afficher lorsque que mon user 2 (utilisateur classique) est loggué
    Pour cela j'ai fait :
    Dans le haut de ma page PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $checkAdmin=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']!="1");
    Et dans mon Body :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    if ( isset($checkAdmin) ) { ?> 
    OK je suis admin 
    <?php } ?>
    En revanche ca ne fonctionne pas j'ai toujours le message "OK je suis Admin" qui s'affiche dans les deux cas...

    Merci de votre aide

    Franck

  2. #2
    Membre éclairé Avatar de Cat81
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 56
    Par défaut
    Bonjour,

    Selon moi, c'est au niveau de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']!="1");
    T'as essayé de voir ce que cela te renvoi via un echo du résultat?

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $checkAdmin=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']!="1");
    C'est du grand art
    1 - mysql_query est obsolète
    2 - mysql_query ne renvoi pas les données, il faut faire un fetch ensuite pour lire les résultats
    3 - c'est quoi cette condition triple userId= xxx !="1" ? Et il n'y a pas besoin de " autour du 1
    4 - si tu as déjà une session PHP qui contient l'id de l'utilisateur, tu n'as pas besoin de refaire une requête pour voir s'il vaut 1 ou non
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (isset($_SESSION['user']) && $_SESSION['user'] != 1) {
       // des choses
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2017
    Messages : 11
    Par défaut
    Je débute

    Voici mon code car ca ne fonctionne pas
    En début de page (pour sécuriser ma page)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <?php
    	ob_start();
    	session_start();
    	require_once '../dbconnect.php';
     
    	// if session is not set this will redirect to login page
    	if( !isset($_SESSION['user']) ) {
    		header("Location: ../index.php");
    		exit;
     
    	}
    	// select loggedin users detail
    	$res=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']);
    	$userRow=mysql_fetch_array($res);
     
    ?>
    La partie affichage de ma fonction admin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
     
    								<!-- FONCTION POUR L ADMIN -->
    								<?php
    								if (isset($_SESSION['user']) && $_SESSION['user'] != 1) {
    								?> 
     
    								<div class="form-group">
                                        <label class="col-md-12">Nouvel Utilisateur</label>
                                        <div class="col-md-12">
                                        <a href="../register.php">test</a>
    									</div>
                                    </div>
     
    								<?php } 
    								else {}
    								?>
     
    								<!-- FIN DE FONCTION ADMIN -->
    J'ai essayé avec cà et idem ca ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (isset($_SESSION['user']) && $_SESSION['userId'] != 1)
    Merci beaucoup de votre aide

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Quand on te dit "mysql_query est obsolète", ça veut dire qu'il ne faut plus utiliser l'extension mysql.

    Aujourd'hui, on utilise PDO.

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    A quel endroit remplis-tu la session ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/08/2007, 13h42
  2. Réponses: 6
    Dernier message: 30/09/2006, 15h14
  3. checking de connexion
    Par JEG dans le forum Développement
    Réponses: 4
    Dernier message: 09/10/2002, 13h36
  4. [propriétés]Option Checked
    Par psl dans le forum Composants VCL
    Réponses: 6
    Dernier message: 22/08/2002, 08h07
  5. Check Url pour savoir si erreur 404 ou si le site existe
    Par Clément[Delphi] dans le forum Composants VCL
    Réponses: 2
    Dernier message: 07/08/2002, 13h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo