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 :

problème de connexion


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 19
    Par défaut problème de connexion
    Bonsoir,

    Actuellement je développe une solution de gestion pour les sociétés, chaque entreprise aura sa propre base de données mais les pages php sont les mêmes pour tout les utilisateurs.

    Du cout j’ai créer une base de données globale (db_solution) qui permet de gérer les comptes société, et à chaque création d’un compte une base de données pour la société est automatiquement générée (db_societe_1, db_societe_2, db_societe_3, db_societe_4 …).

    Le souci est le suivant :

    Dans la page de connexion comment savoir la base de données que je vais utiliser, vu que c’est la même page login.php pour toutes les sociétés, et chaque société est géré par une base de données ?

    J’ai pensé à personnaliser l’url par société (www.solution.coml/societe1, www.solution.coml/societe2, www.solution.coml/societe3 …) mais je ne sais pas comment procéder vu que c’est toujours les mêmes fichiers, et c’est dans le dossier racine de l’application.

    Merci d’avance pour votre aide.

  2. #2
    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
    Si l'utilisateur ne doit pas indiquer sa société, alors il faut que la table des utilisateurs soit commune.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 19
    Par défaut
    Merci pour votre réponse,

    Mais j'aimerais conserver les informations de la société dans la sa base de données pour les backup parce que sinon ça va créer des problème lors de la sauvegarde et la restauration.

  4. #4
    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
    Il faut alors que l'utilisateur indique sur quelle entreprise il veut se connecter.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

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

    Solution 1 :
    Parcourir à chaque connexion TOUTES les tables pour trouver la bonne...

    CEPENDANT :
    en séparant corps et biens les informations dans des BdD séparées, rien n'empêche qu'un même utilisateur puisse faire partie de plusieurs sociétés en même temps, avec les mêmes paramètres de connexion.
    Et dans ce cas, impossible de savoir dans quelle société il veut se connecter...

    Solution 2 :
    Il faut alors, à la connexion, renseigner un TROISIEME paramètre (nom de la société, ou son identifiant,....), bref : quelque chose qui va identifier formellement la société.

    OU
    Solution 3 :
    Il faut, à 1ère vue, une table COMMUNE, contenant :
    • login_user
    • pwd_user
    • nom_bdd_societe // nom de la bdd à laquelle se connecter
    • id_user_societe

    En s'assurant que les couples login_user / pwd_user sont bien distincts.

  6. #6
    Membre à l'essai
    Inscrit en
    Janvier 2003
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 7
    Par défaut
    Une autre solution :

    1 : comme tu l'as suggéré, personnaliser l'URL par société. Deux solutions :
    www.solution.com/societe1
    societe1.solution.com/ (je trouve ça plus propre)

    2 : grâce à $_SERVER["HTTP_HOST"], tu sais avec quelle URL l'utilisateur s'est connecté et tu peux donc décider sur quelle base tu dois te connecter.

    Voici par exemple comment automatiser le nom de la base d'après l'URL, avec la deuxième solution d'URL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    preg_match('~^(\w*)\.solution\.com~', $_SERVER["HTTP_HOST"], $tab_result);
    $bdd_name = 'db_' . $tab_result[1];

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

Discussions similaires

  1. [Première installation] Problème de connexion
    Par sekiryou dans le forum Installation
    Réponses: 2
    Dernier message: 02/03/2004, 19h18
  2. [ Oracle 9ias / 10g] problème de connexion
    Par Boosters dans le forum JDeveloper
    Réponses: 2
    Dernier message: 20/01/2004, 17h23
  3. Problème de connexion au serveur MYSQL
    Par ETOKA dans le forum Outils
    Réponses: 2
    Dernier message: 27/11/2003, 09h28
  4. Réponses: 11
    Dernier message: 13/10/2003, 14h48
  5. problème de connexion 2 PC
    Par guitalca dans le forum Développement
    Réponses: 3
    Dernier message: 22/09/2003, 14h04

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