[PHP/MySQL] Problème d'accès incompréhensible
Résolu
J'ai une erreur qui m'énerve un peu...
"mysql_connect(): Accès refusé pour l'utilisateur: 'root'@'@localhost'"
C'est "classique" mais un truc me chiffonne quand même...
J'ai créé une fonction pour me simplifier mes dialogues avec la base de donnée :
Cette fonction est dans un fichier qui est inclu dans chacune de mes pages, y compris celle où j'ai l'erreur.
J'appel la fonction connect_bdd() dans un switch, et c'est donc lors d'un de ces appel que j'ai le message d'erreur...
Le truc, c'est que les autres appels fonctionnent...
Voilà pourquoi je ne comprends pas trop cette erreur :/
Si quelqu'un peut m'aider... Merci
PS : Si je copie les fonctions classiques dans le switch (mysql_connect() etc...) ça marche ...
"mysql_connect(): Accès refusé pour l'utilisateur: 'root'@'@localhost'"
C'est "classique" mais un truc me chiffonne quand même...
J'ai créé une fonction pour me simplifier mes dialogues avec la base de donnée :
function connect_bdd() { global $host,$login,$motdepasse,$bdd ; mysql_connect($host,$login,$motdepasse) ; mysql_select_db($bdd); }
Cette fonction est dans un fichier qui est inclu dans chacune de mes pages, y compris celle où j'ai l'erreur.
J'appel la fonction connect_bdd() dans un switch, et c'est donc lors d'un de ces appel que j'ai le message d'erreur...
Le truc, c'est que les autres appels fonctionnent...
Voilà pourquoi je ne comprends pas trop cette erreur :/
Si quelqu'un peut m'aider... Merci
PS : Si je copie les fonctions classiques dans le switch (mysql_connect() etc...) ça marche ...
A voir également:
- [PHP/MySQL] Problème d'accès incompréhensible
- Acces rapide - Guide
- Accès refusé - Guide
- Trousseau d'accès iphone - Guide
- Easy php - Télécharger - Divers Web & Internet
- Accès presse papier - Guide
4 réponses
Les deux @ sont un peut bisar oui, mais je ne vois pas d'où ça vient...
// Variables de Base de donnée :
Voilà pour mes variables... (comme je l'ai dit, la connection marche sans aucun problème pour les autres appels)
et mon switch :
Et voilà donc mon swith... L'utilisation que j'ai déjà pu tester, c'est le minichat (qui fonctionne parfaitement...).
J'ai essayé déjà de "déplacer" les case du switch, mais ça ne change rien...
J'ai aussi essayé sur un de mes comptes Free, j'ai la même erreur
// Variables de Base de donnée :
$host = "localhost"; $login = "root" ; $motdepasse = "" ; $bdd = "test" ;
Voilà pour mes variables... (comme je l'ai dit, la connection marche sans aucun problème pour les autres appels)
et mon switch :
switch ($_GET['page']) { case "livredor": if (isset($_POST['pseudo']) && isset($_POST['message']) && $_POST['pseudo'] != NULL && $_POST['message'] != NULL) { $message = addslashes(htmlentities($_POST['message'])); $pseudo = addslashes(htmlentities($_POST['pseudo'])); connect_bdd(); $date = date("Y-m-d") ; $heure = date("H:i:s") ; if (isset($_POST['email']) && $_POST['email'] != NULL) { $email = $_POST['email'] ; } else { $email = "" ; } if (isset($_POST['pageperso']) && $_POST['pageperso'] != NULL) { $pageperso = $_POST['pageperso'] ; } else { $pageperso = "" ; } $sql = "INSERT INTO livredor (pseudo,email,pageperso,message,ladate,heure) VALUES ('$pseudo','$email','$pageperso','$message','$date','$heure')" ; $rep = mysql_query($sql) or die(mysql_error()); deco_bdd() ; } break; case "login": if (isset($_POST['pseudo']) && isset($_POST['motdepasse']) && $_POST['pseudo'] != NULL && $_POST['motdepasse'] != NULL) { $pseudo = addslashes(htmlentities($_POST['pseudo'])) ; $motdepasse = addslashes(htmlentities($_POST['motdepasse'])) ; connect_bdd(); $sql = "SELECT * FROM kami_users WHERE (pseudo = \"$pseudo\")" ; $reponse = mysql_query($sql) or die(mysql_error()) ; $donnees = mysql_fetch_array($reponse) ; deco_bdd(); if (addslashes(htmlentities($donnees['motdepasse'])) == $motdepasse) { $_SESSION['user'] = $pseudo ; $_SESSION['admin'] = $donnees['admin'] ; // $_SESSION['email'] = $donnees['email'] ; $redirect = 'login.php?login=success' ; // Login OK } else { $redirect = 'login.php?login=fail' ; // Login echoué } } break ; case "minichat": if (isset($_POST['pseudo']) && isset($_POST['message']) && $_POST['pseudo'] != NULL && $_POST['message'] != NULL) { $message = addslashes(htmlentities($_POST['message'])); $pseudo = addslashes(htmlentities($_POST['pseudo'])); connect_bdd(); $verif = mysql_query("SELECT * FROM minichat WHERE (pseudo = '$pseudo') ORDER BY id DESC LIMIT 0,1") or die(mysql_error()); $verif2 = mysql_fetch_array($verif) ; if ($verif2['message'] != $message) { $date = date("Y-m-d") ; $heure = date("H:i:s") ; $sql = "INSERT INTO minichat (pseudo,message,ladate,heure) VALUES ('$pseudo','$message','$date','$heure')" ; $rep = mysql_query($sql) or die(mysql_error()); } deco_bdd() ; } break ; }
Et voilà donc mon swith... L'utilisation que j'ai déjà pu tester, c'est le minichat (qui fonctionne parfaitement...).
J'ai essayé déjà de "déplacer" les case du switch, mais ça ne change rien...
J'ai aussi essayé sur un de mes comptes Free, j'ai la même erreur