Help - Search - Member List - Calendar
Full Version: [Réglé] Problème codage PHP/SQL
Rastaba's Forum > Dépannage > Dépannage d'Urgence
GoudiMan
Bon j'ai ce problème depuis un bon bout de temps ... et je suis tjs pas arrivé à le resoudre ! En esperant qu'il y'a des têtes en PHP/SQL wink.gif

Je suis sur easyphp 1.6

Voici l'erreur rendue :

Warning: Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in d:\documents\sites web\projet\site\includes\fct_bdd.inc on line 37
Warning: MySQL Connection Failed: Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in d:\documents\sites web\projet\site\includes\fct_bdd.inc on line 37
Warning: MySQL: A link to the server could not be established in d:\documents\sites web\projet\site\includes\fct_bdd.inc on line 37
Erreur SQL retournée :
SELECT id,autorisation,titre,auteur,date,heure,intro,images,comms FROM galeries WHERE autorisation='1' ORDER BY id DESC
Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON)

Mon fichier ce présente sous cette forme

CODE
<?
$db = mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db('articles',$db);
Mes fonction, qui utilisent des requetes SQL du type :
$sql3 = "SELECT * FROM galeries WHERE autorisation='0'";
$req3 = mysql_query($sql3) or die('Erreur SQL retournée : <br>'.$sql3.'<br>'.mysql_error());
$res3 = mysql_numrows($req3);
mysql_close();
?>


Le pire c'est que je me suis renseigner sur ce probleme ! Je suis aller sur le site de easyphp fait une recherche dans le forum... c'est une erreur de débutant semblerait t-il ! Cependant je n'ai rien modifier (pas changer le pass de mysql) meme après réinstallation ! donc en principe c'est bien : mysql_connect("localhost", "root", "")

Et j'ai vérifié, l'utilisateur root à tous les privilèges ! (Select Insert Update Delete Create Drop Reload Shutdown Process File Grant References Index Alter)

J'ai testé également un fichier testbdd.php qui contient :
CODE
<?
$db = mysql_connect("localhost", "root", "") or die(mysql_error());

if (!mysql_select_db('articles',$db))
{
echo "Pb de connexion";
}
?>

Et aucun probleme de connection !

Je suis sur que c'est une erreur 'à la con', et c'est ca le pire ! Et ne me dites pas d'aller voir la FAQ, je l'ai deja fait au moins 3 fois ! (Vous allez me dire d'essayer de la comprendre comme ds les autres message j'en suis sur lol)

Merci d'avance pour votre aide !
rastaba
kikou goudi wink.gif

je pense que tu devrais passer a la version 1.7 de EasyPhp ==> ici

c'est peut etre un probleme d'identification ou de nom de la base...

d'apres ce message, c'est l'utilisateur ODBC qui essaye de se connecter a la bdd

QUOTE
Warning: Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON)


normal ???

QUOTE
$db = mysql_connect("localhost", "root", "") or die(mysql_error());


pas de mot de passe ? normal ?

Va voir ceci


Au fait, as tu bien crée cette base de donnée via PhpMyAdmin ???

a ++
GoudiMan
QUOTE
d'apres ce message, c'est l'utilisateur ODBC qui essaye de se connecter a la bdd


Je n'ai qu'un utilisateur qui est root et qui n'a pas de mot de pass (c'est en fait l'utilisateur par defaut de easyphp)

QUOTE
Au fait, as tu bien crée cette base de donnée via PhpMyAdmin ???


J'ai en effet créé cette base par PHPMyAdmin !

J'vais tenter d'installer easyPHP 1.7 mais j'ai bien peur que cela ne change pas grand chose

sad.gif
rastaba
Visiblement, c'est un probleme assez récurent

essaye de chercher dans google :
Warning: Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON)


Sinon, il y' a 2 références sur le php/MySQL,

c'est ici & ici
GoudiMan
C'est bon, un gars à trouvé la solution sur EasyPHP.org !
Voici ce qu'il m'a dit (C'est court, mais vachement efficace!)

QUOTE
Si tu fais : mysql_query($sql, $GLOBALS["db"]);
Ca arrange les choses ou pas ?


J'ai pu me renseigner sur cette fameuse variable $GLOBALE:

QUOTE
Un tableau associatif contenant les références sur toutes les variables globales actuellement définies dans le contexte d'exécution global du script. Les noms des variables sont les index du tableau.

Cette variable est une 'superglobal', ou globale automatique. Cela signifie qu'elle est simplement disponible dans tous les contextes d'exécution (fonctions ou méthodes). Vous n'avez pas besoin de faire global $GLOBALS; pour y accéder.


Merci à lui wink.gif w00t.gif rolleyes.gif laugh.gif

EDIT: Et merci à toi (j'allais oublier, fou que je suis!)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.