|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
![]() ![]() Inscription : janvier 2004 Messages : 2 123 ![]() |
Bonjour,
J'ai réaliser une application mutli-utilisateurs et multi-postes. Je souhaiterais de toute connection à la base de données requiert un utilisateur non déjà connecté. Je crois qu'un exemple évitera de long discours plus ou moins compréhensibles ( Soient trois PC : A, B et C. et 3 utilisateurs différents (pseudo+password) : 1,2 et 3. Supposons maintenant que 1 se connecte sur A et 2 sur B. Je souhaiterai alors que toute personne sur C ne puisse utiliser les pseudo 1 ou 2 pour se connecté (normale car déjà en ligne). Comment attribuer un accès unique par pseudo/password à la base de donnée ? merci, [Edit]PS : je suis encore débutant dans FireBird ... mais je progresse |
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() ![]() |
Moi, j'ai bidouillé comme ceci .
J'ai utilisé une Table UTILISATEUR et quand je me logue, j'insere une ligne avec les infos NOM, DATE_CONNECT, HEURE_CONNECT. Une fois que je quitte, j'efface la ligne. Ce qui est chiant c'est que si l'appli client se plante, la ligne reste. Donc, a partir de la DATE_CONNECT et HEURE_CONNECT, je verifie si c'etais du à une panne ou non. A+
__________________
On progresse ..... |
|
|
00
|
|
|
#3 |
![]() ![]() Inscription : janvier 2004 Messages : 2 123 ![]() |
merci pour cette réponse si rapide
J'avais pensé à quelque chose comme cela, mais il y a un problème : Le logiciel doit fonctionner sur plusieurs parc informatique allant de 3 PC à 10 PC sans administrateurs. Or les (futurs) clients sont loin d'être des pros et leurs PC ont la facheuse tendance à planter. N'arrivant pas à les convaincre de réinstaller Windows, et sachant qu'un utilisateur peut se connecter plusieurs fois par jour et d'une durée très variable, je cherche une solution un peu plus fiable. Je me demandais éventuellement s'il était possible de retourner tous les utilisateurs en ligne (puisque je crois qu'il est possible de renvoyer le nombre de connecté). Comme cela, l'utilisateur se verra attribuer la connection s'il n'est pas présent dans la liste. Je garde ta solution en réserve mais je souhaiterais quelque chose plus adapté aux besoins. merci |
|
|
00
|
|
|
#4 | |
|
Membre Expert
![]() Frédéric Inscription : octobre 2002 Messages : 1 722 ![]() |
Citation:
Lors de le connexion on verifie que l'utilisateur n'existe pas dans la table, s'il existe on regarde l'ID du poste si c'est le même alors on update date_connect, heure_connect sinon on refuse le connexion. Lors de la deconnexion on efface la ligne de l'utilisateur. Ainsi on empèche la multiconnexion à partir de plusieurs postes. En cas de plantage, il faut que l'utilisateur se reconnecte en utilisant le même poste pour ne pas être bloquer (ou ajouter un traitement de verification de date/heure comme a du faire ANDRY) Voilà mais sinon il me semble qu'on peut récuppérer la liste des USER connectés, faudrait que je regarde. |
|
|
|
00
|
|
|
#5 |
![]() ![]() Inscription : janvier 2004 Messages : 2 123 ![]() |
L'idée est intéressante
merci, Je vais tenter une recherche tout de même sur la liste des USERS connectés (mais étant débutant...). |
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Frédéric Inscription : octobre 2002 Messages : 1 722 ![]() |
TIBDatabaseInfo de la palette Interbase (Delphi ou BC++)
A une propriété UserNames qui est une TStringList contenant la liste des utilisateurs connectés à la base. Extrait de la doc Delphi : Code :
|
||
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : janvier 2004 Messages : 2 123 ![]() |
Super merci
Je n'aurais jamais pensé que cela soit aussi simple Je tente cela et je vous tiens au courant. encore merci ! |
|
|
00
|
|
|
#8 | ||
![]() ![]() Inscription : janvier 2004 Messages : 2 123 ![]() |
Cela marche à la perfection :
Code :
Barbibulle,a bientot, |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com