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 :

$_SESSION et conditions IF


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2025
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2025
    Messages : 2
    Par défaut $_SESSION et conditions IF
    Bonsoir chers amis,

    J'ai un souci avec les conditions IF dans mon script.
    J'ai besoin de comprendre, soit c'est moi qui n'ai rien compris ou soit j'ai commis une erreur qui me renvoit un résultat erroné mais que je ne comprend pas.
    J'aimerais limiter les nombres d'accès sur certaines parties de la page à partir du rôle d'un utilisateur.
    voici le script:
    L'idée est la suivante, lorsque la variable role est effectivement ADMIN, nous devons sélectionner un site, dans le cas contraire l'utilisateur sera directement connecté dans son site, donc pas besoin de le sélectionner. je rappelle que sur la page connexion, je passe la valeur 0 à la variable site lorsque l'utilisateur est ADMIN et 1 lorsque n'est pas ADMIN

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
         <?php 
    define("ADMIN", "Admin général");
          if($_SESSION['role'] == ADMIN): 
    ?>
    <div class="col-sm-4 mb-3">
         <label class="form-label fw-bolder"> Site</label>
         <select type="text" class="form-select form-select-sm" 
          </select>
     </div>
    <?php else: ?>
    <input type="text" name="site" 
                  class="form-control form-control-sm"
                  value="<?= $_SESSION['site'] ?>">
    <?php endif; ?>

    Maintenant, lorsque l'utilisateur est ADMIN, au lieu que j'ai la possibilité de sélectionner le site, le script me renvoie la valeur 0, et c'est ça mon problème.

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 681
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 681
    Par défaut
    affichez le contenu de $_SESSION au début de la page pour vérifier que les différentes variables de session contiennent bien le contenu prévu.

  3. #3
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 487
    Par défaut
    Bonjour,

    Je ne sais pas si le script présenté ici est complet ou s'il ne s'agit que d'un extrait, mais on rappelle qu'il faut utiliser session_start(), avec d'éventuelles options, pour démarrer ou reprendre la session, à moins que session.auto-start soit configurée à true.

    Par ailleurs, à moins d'être absolument sûr que la variable de session sera toujours dûment renseignée avant d'appeler le script, il faut également vérifier l'existence des entrées (ici role et site) dans un tableau associatif tel que la variable $_SESSION, sinon des avertissements risquent d'être émis.

  4. #4
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2025
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2025
    Messages : 2
    Par défaut
    Citation Envoyé par Obsidian Voir le message
    … on rappelle qu'il faut utiliser session_start(), avec d'éventuelles options, pour démarrer ou reprendre la session, à moins que session.auto-start soit configurée à true. […] il faut également vérifier l'existence des entrées (ici role et site) dans un tableau associatif tel que la variable $_SESSION, sinon des avertissements risquent d'être émis.
    Merci pour l'intervention, j'ai dû vérifier et j suis parvenu à trouver la solution, merci beaucoup

  5. #5
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 487
    Par défaut
    Citation Envoyé par Giresse2692 Voir le message
    Merci pour l'intervention
    Avec plaisir.

    j'ai dû vérifier et j suis parvenu à trouver la solution, merci beaucoup
    …qui, du coup, était ?

    (N'oublie pas non plus le bouton en bas de page. Merci )

Discussions similaires

  1. Condition If multiple
    Par M1000 dans le forum ASP
    Réponses: 2
    Dernier message: 01/03/2004, 13h46
  2. [MYSQL] conditions et requetes
    Par sebos63 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 26/02/2004, 16h41
  3. Condition sur debug et release
    Par xave dans le forum MFC
    Réponses: 3
    Dernier message: 04/02/2004, 15h04
  4. Condition et contenu TImage
    Par Detlev_linux dans le forum Langage
    Réponses: 6
    Dernier message: 23/12/2003, 01h00
  5. boucle avec condition d'arret changeante
    Par NicoH dans le forum Langage
    Réponses: 3
    Dernier message: 10/06/2003, 11h48

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