Problème d'utilisateurs.... [PHP] [MySQL] - Programmation
Marsh Posté le 12-02-2002 à 10:03:10
Vérifie que les utilisateur ont bien les droit sur la bd en qllant dans Autres privilèges
Marsh Posté le 12-02-2002 à 10:10:05
je précise le message d'erreur: "Warning: Access denied for user: 'ODBC@localhost' (Using password: NO)"
Marsh Posté le 12-02-2002 à 10:13:00
thecoin a écrit a écrit : Vérifie que les utilisateur ont bien les droit sur la bd en qllant dans Autres privilèges |
J'utilise MySQL Front. Et j'ai bien vérifié les droits, même le root avec les pleins pouvoirs, ça ne marche pas.
Marsh Posté le 12-02-2002 à 11:07:03
ReplyMarsh Posté le 12-02-2002 à 11:25:08
m@nou a écrit a écrit : essaie peut-être juste un arrêt/relance de MySQL |
ben ça fait qq jours que je suis dvt ce prob. Les redémarrage y'en à eu...
Marsh Posté le 12-02-2002 à 11:31:39
kyo54 a écrit a écrit : je précise le message d'erreur: "Warning: Access denied for user: 'ODBC@localhost' (Using password: NO)" |
tu as pas mis de mot de passe ?
Marsh Posté le 12-02-2002 à 11:39:11
pour l'utilisateur OBDC, faut pas que j'en mette pour que ça marche.
Marsh Posté le 12-02-2002 à 11:45:10
Tu devrais essayer de te connecter à mysql sans odbc mais en utilisant la connection native.
Marsh Posté le 12-02-2002 à 12:41:49
comment faire? Et en fait OBDC j'ai jamais eu l'impression de m'en servir.
Marsh Posté le 12-02-2002 à 13:01:38
kyo54 a écrit a écrit : ben ça fait qq jours que je suis dvt ce prob. Les redémarrage y'en à eu... |
je disais çà car quand je change les mdp, j'ai souvent ce type de message et donc le fait de relance MySQL çà débloque le truc.
Essaie avec phpMyAdmin pour voir si t'as le même pb ?
Le user/mdp se mettent dans le fichier config.inc.php.
Tu peux essayer en ligne de commande aussi (mysql -uuser -pmdp)
As-tu renseigné le host ?
[jfdsdjhfuetppo]--Message édité par m@nou--[/jfdsdjhfuetppo]
Marsh Posté le 12-02-2002 à 13:35:53
je suis NB mais moi je fais ça:
<?php
$host="nom_du_host";
$user="user_name";
$password="password";
$bdd="database";
mysql_connect($host, $user, $password) or die("erreur de connexion au serveur " );
mysql_select_db($bdd) or die ("erreur conexion a la bdd" );
$query = "select ce que tu veux";
mysql_close();
?>
Marsh Posté le 12-02-2002 à 15:26:09
m@nou a écrit a écrit : je disais çà car quand je change les mdp, j'ai souvent ce type de message et donc le fait de relance MySQL çà débloque le truc. Essaie avec phpMyAdmin pour voir si t'as le même pb ? Le user/mdp se mettent dans le fichier config.inc.php. Tu peux essayer en ligne de commande aussi (mysql -uuser -pmdp) As-tu renseigné le host ? |
J'ai essayé avec phpmyadmin et c'est le même prob. Le truc c que si je me connecte directement sur la base, ça marche impec. Mais à partir de mes pages PHP, ça se met à deconner. C'est là qu'est le problème: le lien OBDC est merdique semble-t'il. Ce que je ne comprends pas c que j'ai jamais configuré, ni même eu l'impression d'utiliser ODBC!
C'est quoi vos utilisateurs au fait? Je veux dire ceux par défaut...
Marsh Posté le 12-02-2002 à 15:27:24
oups93 a écrit a écrit : je suis NB mais moi je fais ça: <?php $host="nom_du_host"; $user="user_name"; $password="password"; $bdd="database"; mysql_connect($host, $user, $password) or die("erreur de connexion au serveur " ); mysql_select_db($bdd) or die ("erreur conexion a la bdd" ); $query = "select ce que tu veux"; mysql_close(); ?> |
nan mais c un truc com ça que j'ai mis aussi...
Marsh Posté le 12-02-2002 à 15:42:10
kyo54 a écrit a écrit : comment faire? Et en fait OBDC j'ai jamais eu l'impression de m'en servir. |
Comprends pas pourquoi tu passe par ODBC... pourquoi n'utilises tu pas les connexions natives de PHP ?
Il me semble qu'ODBC ne peut que ralentir le processus dans ce cas de figure. rectifier si je me trompe...
Marsh Posté le 12-02-2002 à 17:45:12
kyo54 a écrit a écrit : J'ai essayé avec phpmyadmin et c'est le même prob. Le truc c que si je me connecte directement sur la base, ça marche impec. Mais à partir de mes pages PHP, ça se met à deconner. C'est là qu'est le problème: le lien OBDC est merdique semble-t'il. Ce que je ne comprends pas c que j'ai jamais configuré, ni même eu l'impression d'utiliser ODBC! C'est quoi vos utilisateurs au fait? Je veux dire ceux par défaut... |
stop ! le message d'erreur est déroutant. Biensûr tu n'utilises pas ODBC. MySQL est en natif maintenant avec PHP.
En faisant un simple test en ligne de commande en tapant mysql tu auras un message similaire car il te demande un login pour se connecter.
Un truc est pas clair dans ce que tu dis
Tu dis pouvoir te connecter directement à la base : qu'entends-tu par là ? En ligne de commande via le pgm mysql ? ou autrement
Sinon peux-tu en ligne de commande faire mysql -utonnomdutilisateur -psonmotdepasse
si tu vois un prompt genre mysql> c'est tout bon
qu'as-tu mis dans le fichier phpmyadmin config.inc.php ?
si t'arrive pas à te connecter avec phpmyadmin comment changes-tu les mdp et les users ? via la ligne de commande ?
Marsh Posté le 13-02-2002 à 10:22:46
Je n'ait en fait jamais utilisé la ligne de commande, j'ai pris MySQL Front au debut et phpmyadmin en ce moment.
J'ai réinstallé MySQL pour voir. Le truc marche bien mais sans sécuritée: tout le monde à le droit de tout faire.
Je tente de modifier l'utilisateur "n'importe qui" sur "localhost". ça ne marche pas. Je le supprime et la, encore une fois, même le root ne peut plus consulter ma base.
Je recrée alors l'utilisateur avec les mêmes spécifications qu'à l'origine (je les avait notées par prévoyance). Ben ça ne marche plus non plus. En bref je reviens au statu quo ante et ça reste en rade! C'est vraiment puissant! Par contre, si je cré un utilisateur nomé OBDC avec les plein pouvoirs ça remarche.
ça commence à me saouler ferme cette histoire de MySQL infoutu de marcher avec plus d'un utilisateur! Voila 3 jours que je me fais chier à ecumer toutes les docs possibles et faire des tests pour essayer de faire marcher cette merde!
Marsh Posté le 13-02-2002 à 13:28:19
ESSAIE EN LIGNE DE COMMANDE !
je parles assez fort là D
répertoire bin de ton répertoire d'install MySQL, y'a un pgm qui s'appelle mysql.exe
et tu fais çà (sans avoir fait de modif dans ta table de user)
mysql -utonnomdutilisateur -psonmotdepasse
exemple sur root sans mdp : mysql -uroot
tu devrais alors obtenir un prompt genre mysql> à la place de ton c:\ habituel
pour sortir de mysql \q
NB : mysql -? te donne tout ce que tu as le droit de faire
et à chaque changement de mdp dans la table user -> arrêt/relance de mysql.
Après procède par élimination.
Commence juste par mettre un mdp sur le user root en utilisant la fonction password dans phpMyAdmin.
et réessaie la commande mysql -uroot -plemotdepassede root
si çà marche c'est tout bon tu peux faire le ménage, voire créer d'autres users.
Marsh Posté le 13-02-2002 à 15:09:20
Ouf, mon problème est enfin résolu:
En fait je n'effectuait la connexion qu'a la première page. Visiblement ODBC permettait de maintenir le lien, et c'est pour ça que tout dependait de cet "utilisateur".
En configurant la connection à chaque page, mon problème à été résolu.
Merçi à tous ceux qui m'ont conseillés. Je vais pouvoir continuer mon projet. Je vous laisse, j'ai du boulot à rattraper!
Marsh Posté le 13-02-2002 à 15:09:27
Ouf, mon problème est enfin résolu:
En fait je n'effectuait la connexion qu'a la première page. Visiblement ODBC permettait de maintenir le lien, et c'est pour ça que tout dependait de cet "utilisateur".
En configurant la connection à chaque page, mon problème à été résolu.
Merçi à tous ceux qui m'ont conseillés. Je vais pouvoir continuer mon projet. Je vous laisse, j'ai du boulot à rattraper!
Marsh Posté le 13-02-2002 à 16:03:19
Reply
Marsh Posté le 12-02-2002 à 09:59:08
Salut à tous.
J'ai une installation NT + IIS + PHP + MySQL. Je souhaite securiser ma base de données. J'ai donc crée différents utilisateurs de MySQL, avec de droits différents. J'ai vérifié la configuration en utilisant les utilisateurs directement sur MySQL: ça marche à merveille.
Les problèmes commencent qd je veux utiliser les utilisateurs à partir d'une page PHP: les utilisateurs sont bien identifiés mais ensuite rien ne marchee: aucune requete ne passe par absence de droits! même le root! Pour que le lien MySQL-PHP fonctionne, il faut qu'il y ait un utilisateur nommé OBDC. Et de ses droits dépendent tous les droits des utilisateurs. Bref je ne peux utiliser qu'un utilisateur, très très genant!
Comment faire pour pouvoir avoir plusieurs utlisateurs fonctionnels?
---------------
.