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 :

Sessions ou autre chose


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 16
    Par défaut Sessions ou autre chose
    Salut à tous.

    Je suis entrain de créer une application web (intranet) utilisable par 2 services diiférents. Si les deux services peuvent accéder à toutes les pages de l'application, l'accès aux fonctionnalités se fait fonction du service.

    J'ai une table Utilisateurs :
    nom
    login
    mot de passe
    service


    Existe-t-il un autre moyen à part les sessions pour passer l'information de page en page afin que je puisse à chaque fois tester si l'utilisateur est permis d'user d'une fonctionnalité? Comme l'application est sensée tourner au moins 4 heures par jour, les sessions conviendraient-elles malgré tout?

    Merci de votre réponse

  2. #2
    Invité
    Invité(e)
    Par défaut
    je pense que les sessions est la solution qui gere le mieux ton pb; ensuite pour le tps tu peux fixer la durée de vie de ta session
    dans ton php.ini tu modifie la valeur de session.lifetime

  3. #3
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Salut

    Oui, le systéme de gestion par session (php) est bien adapté à ce contexte et même conseillé.
    Avant tout, tu devrais auparavant rajouter un champ dans ta table pour définir et attribuer un statut à chaque utilisateur.

    soit par exemple :
    champ statut (variables OUI ou NON)

    Mais justement, si les utilisateurs des 2 services peuvent accéder à la même application, c'est le statut qui fera la différence entre l'accés à certaines fonctionnalités ou non de cette application.

    A partir de là, et si tu utilises les sessions pour logger les utilisateurs, tu sauvegardes la variable $statut dans la session.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    session_start();
    session_register("statut");
    // entr'autres
    Ensuite, à toi d'élaborer ton systéme de conditions (if OUI ou NON) en fonction du statut loggé pour accés aux fonctions.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 16
    Par défaut Sessions ou autre chose
    Est-il vraiment utile d'ajouter un autre champs à ma table? Le test ne pourrait-elle pas se faire sur la variable Service de la session et le résultat de ma requête?

    ...
    $requete="select * from Utilisateur where service = $service (transmis par la session) and mdp = "$mdp (transmis" par la session);

    $resultat = mysql_fetch_row($requete);

    if !$resultat
    {
    echo "<script>";
    echo "alert(\"Opération non autorisée\")";

    }

    ....

  5. #5
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Citation Envoyé par chingo
    .... Si les deux servicespeuvent accéder à toutes les pages de l'application, l'accès aux fonctionnalités se fait fonction du service....
    Ce n'est pas ce que tu disais, il y une une contradiction dans ta méthode.

    soit : 2 services = accés partout
    soit : 2 services = pour accés à certaines fonctionnalités.

    hum !....???

    D'où un paramétre complémentaire.

    [EDIT :] Ou alors, il fallait préciser que le service 1 a accés aux fonctionnalités 1.
    Et que le service 2 a accés aux fonctionnalités 2.

    Question de formulation du probléme.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 16
    Par défaut Sessions ou autre chose
    Effectivement,

    Service 1 a accès aux fonctionnalités a, b,c
    Service 2, accès à d,e,f,...

  7. #7
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Dans ce cas là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    session_start();
    session_register("service");
    // et autres variables utiles
    L'utilisateur accéde à l'application mais ta session connait son service d'origine puisque désormais sauvegardée.
    A partir de conditions ( If service _1 OU service_2 ... j'abrége), tu peux composer tes liens d'accés aux différentes fonctionnalités.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 16
    Par défaut Sessions ou autre chose
    Merci beaucoup. Je te tiendrai au courant du résultat.

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

Discussions similaires

  1. [XSL] replace un espace? ou est ce autre chose?
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 01/12/2005, 19h17
  2. Jointure ou autre chose ?...
    Par tcherito dans le forum Langage SQL
    Réponses: 4
    Dernier message: 21/11/2005, 11h12
  3. l'info c'est bien, appliqué à autre chose, c'est mieux!
    Par bubuchanwa dans le forum Etudes
    Réponses: 30
    Dernier message: 13/07/2005, 19h08
  4. Convertir une image PNM en autre chose ...
    Par mattmarttigan dans le forum C
    Réponses: 9
    Dernier message: 09/02/2005, 20h34
  5. [langage] connaissez-vous autre chose que -d
    Par Sébastien dans le forum Langage
    Réponses: 4
    Dernier message: 05/08/2002, 20h13

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