Gene6 FTP Server Forum: ODBC vers BDD mySQL : création de comptes ? - Gene6 FTP Server Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

ODBC vers BDD mySQL : création de comptes ? Comment créer des utilisateurs en PHP ? Rate Topic: -----

#1 User is offline   Elyopsis 

  • New Member
  • Pip
  • Group: Members
  • Posts: 7
  • Joined: 23-November 04

Posted 23 November 2004 - 03:50 AM

Bonjour !

Si j'ai bien compris, G6 permet seulement de vérifier ou d'utiliser les mots de passe associés à des login dans une BDD (par exemple mySQL, avec ODBC).

Donc par exemple, si dans ma base mySQL j'ai un user "toto" avec comme pass "titi", je dois avoir dans G6 un utilisateur de créé qui utilisera toto/titi.

Mais ma question est la suivante :

comment faire pour ne pas avoir à gerer les utilisateurs dans G6 ?

Je voudrais qu'un utilisateur se connecte à un site internet, s'inscrive en remplissant un formulaire (login/pass), ces données sont envoyées dans la BDD mySQL. Ensuite un dossier est créé pour ce login sur le serveur. G6 doit créer tout seul un utilisateur qui se connectera avec le login/pass rentrés dans le formulaire, et arrivera dans le dossier créé pour ce login.

Application : hébergement de site web.

a l'inscription, on donne login/pass, et en retour ca créer un user login/pass qui se connecte dans un dossier propre au login

ca évite d'avoir a créer manuellement chaque compte dans G6 à chaque inscription !

Merci d'avance pour vos réponses.

This post has been edited by Elyopsis: 23 November 2004 - 03:51 AM

0

#2 User is offline   Codspirit 

  • Mr Code
  • Group: Moderators
  • Posts: 3317
  • Joined: 23-August 04
  • Gender:Male
  • Location:France
  • Interests:Coding, Scripting ...

Posted 23 November 2004 - 05:08 AM

QUOTE (Elyopsis @ Nov 23 2004, 03:50 AM)
Si j'ai bien compris, G6 permet seulement de vérifier ou d'utiliser les mots de passe associés à des login dans une BDD (par exemple mySQL, avec ODBC).


Il y a deux méthode : soit juste le test des mots de passe, soit la totalité des paramètres. Je pense que c'est la première methode qui vous interesse ici.

QUOTE
Donc par exemple, si dans ma base mySQL j'ai un user "toto" avec comme pass "titi", je dois avoir dans G6 un utilisateur de créé qui utilisera toto/titi.


Non, en fait dans la base de donnée, on cherche un nom de compte associé à à un login et un mot de passe, et c'est ce compte de G6 qui sera utilisé.

QUOTE
comment faire pour ne pas avoir à gerer les utilisateurs dans G6 ?


Il est possible d'avoir un seul compte dans G6 pour tous les utilisateurs de la base de donnée.

QUOTE
Je voudrais qu'un utilisateur se connecte à un site internet, s'inscrive en remplissant un formulaire (login/pass), ces données sont envoyées dans la BDD mySQL. Ensuite un dossier est créé pour ce login sur le serveur. G6 doit créer tout seul un utilisateur qui se connectera avec le login/pass rentrés dans le formulaire, et arrivera dans le dossier créé pour ce login.


C'est possible et assez simple. Il suffit d'utiliser le tag $USR_NAME dans les droits de dossier de compte associé à vos utilisateurs. (Un seul compte à configurer pour tous les utilisateurs)

Exemple :
Dossier virtuel : /
Chemin réel : c:\sites\$USR_NAME\
Droits : Download, Upload, Delete, List folder, List files, Make, Remove, Subdirs
(n'oubliez pas de créer le dossier c:\sites\$USR_NAME\ , $USR_NAME étant remplacé par le login)

This post has been edited by CodSpirit: 23 November 2004 - 05:10 AM

If you get a "file not found" error when folowing a link to my ftp, please use your favorite ftp client and try getting the file again.
(I have some case sensivity problems)

Please do not use PM for support
0

#3 User is offline   Elyopsis 

  • New Member
  • Pip
  • Group: Members
  • Posts: 7
  • Joined: 23-November 04

Posted 25 November 2004 - 04:46 AM

merci pour votre réponse, j'ai déjà pu avancer un peu, mais comment dois-je appeler ce compte utilisable par tous les utilisateurs ? et que dois je mettre précisément dans authentification de mon domaine ?

je dois créer un compte manuellement par utilisateur ?

je n'arrive vraiment pas à réaliser ce que je veux. c'est très frustrant car je suis sur que c'est possible. mais celà fait 2 nuits que j'essaie en vain.

le manuel (qu'il soit en français ou en anglais) n'est pas clair pour les débutants, et les réponses trouvées dans le forum en anglais n'ont pas totalement résolu mon problème.

voilà où j'en suis :

adresse de la base : 127.0.0.1
login pour connexion à la base : root
pass pour la connexion à la base : azerty

nom de la base : clients
nom de la table : comptes

champs : num (entier, auto-incrément, identifiant) / login (varchar, unique) / pass (varchar) / type (varchar, prend tout le temps la valeur "client")

Dans la configuration du domaine, voilà le contenu de Authentification :

Nom : Authentification
Préfixe : <vide>
Méthode : BDD via ODBC

Chaine : Driver={MySQL ODBC 3.51 Driver};Server=127.0.0.1;Port=3306;Port=131072;Stmt=;Database=clients;Uid=root;P
wd=azerty;

Demande : SELECT type FROM comptes WHERE login=%s AND pass=%s

L'option "désactiver l'authentification par défaut" n'est pas cochée

Dans Utilisateurs, j'ai essayé de mettre :

nom : $USR_NAME / pass : <vide>
nom : $USR_NAME / pass : généré automatiquement
nom : client / pass : <vide>
nom : client / pass : généré automatiquement

et a dans tous ces cas ca me dit :

USER akira
akira, 331 password required for akira
akira, pass ****
akira, auth "authentification" succeeded, using account "akira"
akira, login failed
akira, 530 login or password incorrect

Par contre, si je créé un utilisateur :
nom : akira / pass <vide> ou pass : généré automatiquement

là ca marche (uniquement avec l'utilisateur akira bien entendu)

mais je dois alors créer un compte portant le nom de chaque utilisateur listé dans la BDD à la main.

or, je veux justement que G6 utilise soit un compte commun, soit me créé tout seul un compte par utilisateur...

je suis vraiment perdu, j'y ai passé 2 nuits !

j'aimerais vraiment y arriver car cette solution m'interesse beaucoup et G6 semble être un très bon produit.

merci d'avance pour votre aide.

cordialement,

elyopsis.
0

#4 User is offline   Matthieu 

  • Addicted Member
  • Group: Staff
  • Posts: 1964
  • Joined: 22-October 03
  • Gender:Male
  • Location:France : Mouy
  • Interests:Science-fiction, World news

Posted 25 November 2004 - 08:35 AM

Il faudra appeler votre compte ftp 'client' (la valeur de type que vous renvoyez) et utiliser :

SELECT type as account FROM comptes WHERE login=%s AND pass=%s

ou renommer la colonne type en account et utiliser cette requete :

SELECT account FROM comptes WHERE login=%s AND pass=%s
Gene6, SARL
Do not use PM to ask for support, use the forum or support email.

Special offer : 10% discount with coupon code : DISCOUNT
0

#5 User is offline   Elyopsis 

  • New Member
  • Pip
  • Group: Members
  • Posts: 7
  • Joined: 23-November 04

Posted 25 November 2004 - 01:13 PM

ok, de cette manière, tout fonctionne à la perfection !
merci beaucoup pour votre aide.

si vous me le permettez, voici quelques remarques qui je l'espère sont constructives :

je me doute que ce type d'option est réservé à des utilisateurs avertis; qui s'y connaissent bien plus que moi dans la gestion de BDD, les liens ODBC ou même le serveur ftp en lui même,

cependant, moi qui suis à la fois novice en PHP (pour l'inscription de comptes dans une BDD MySQL via une page web), novice en SQL, novice sur G6, j'ai eu beaucoup de mal à comprendre comment cela fonctionnait.

je me suis pourtant aidé du manuel, et de plusieurs topics du forum concernant mon problème.

en toute honneteté, j'ai trouvé le manuel trop confus, car même à présent, après avoir mis la solution en oeuvre, je la trouve "mal" expliquée.

bien entendu, je ne prétends pas que votre travail est mauvais, bien au contraire, mais j'essaie de donner un avis critique afin de vous permettre de vous améliorer si tel est votre envie...

peut être que, étant donné vos connaissances sur G6, et le fait que vous l'avez en partie conçu, que vous l'utilisez depuis longtemps, que vous êtes "dedans", il vous est maintenant difficile de vous mettre à la place de novices. il est normal de ne pas comprendre pourquoi certains ne comprennent pas une chose que l'on a soit-même tout à fait compris depuis des lustres.

en espèrant sincèrement que mes remarques ne vous blesserons pas, mais qu'au contraire, elle vous aiderons, je vous remercie à nouveau pour votre aide précieuse.

bien cordialement,

elyopsis.
0

#6 User is offline   Matthieu 

  • Addicted Member
  • Group: Staff
  • Posts: 1964
  • Joined: 22-October 03
  • Gender:Male
  • Location:France : Mouy
  • Interests:Science-fiction, World news

Posted 25 November 2004 - 01:22 PM

En somme, il suffisait de tester l'exemple du manuel tel quel smile.gif

N'hésitez pas à écrire une page de tutorial si vous pensez que c'est confus, cela pourrait peut être aider d'autres personnes smile.gif
Gene6, SARL
Do not use PM to ask for support, use the forum or support email.

Special offer : 10% discount with coupon code : DISCOUNT
0

#7 User is offline   Elyopsis 

  • New Member
  • Pip
  • Group: Members
  • Posts: 7
  • Joined: 23-November 04

Posted 25 November 2004 - 05:00 PM

c'est vrai que l'exemple du manuel fonctionne tout à fait.
en me relisant, je constate que je me suis mal expliqué :

j'ai voulu dire que le manuel est confus pour les novices (en php / mysql) car il est facile de confondre un peu tout.

c'est à dire que les utilisations possibles d'un tel service sont souvent proches :
il est donc probable que les débutants confondent login/user/uid et pass/password/pwd

effectivement, j'ai mal choisi mes noms de colonnes dans ma tables, et j'ai peut être mal choisi le nom de ma table et de ma base.

ma grosse difficulté a été de faire la différence entre la connexion à la base qui nécessite "uid" et "pwd" (a configurer dans mysql) et "user" / "pass" (les noms de mes colonnes) et "password" / "account" utilisé dans l'exemple du manuel...

je vais rédiger un tuto mais je suis loin de garantir que le résultat sera correct, je vous le soumettrai et vous déciderez s'il est pertinent ou non !

a bientôt !

elyopsis
0

#8 User is offline   Codspirit 

  • Mr Code
  • Group: Moderators
  • Posts: 3317
  • Joined: 23-August 04
  • Gender:Male
  • Location:France
  • Interests:Coding, Scripting ...

Posted 25 November 2004 - 08:23 PM

Merci Elyopsis je suis sur que tes commentaires vont aider à améliorer le manuel tongue.gif
If you get a "file not found" error when folowing a link to my ftp, please use your favorite ftp client and try getting the file again.
(I have some case sensivity problems)

Please do not use PM for support
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users