Erreur mysql : SQLSTATE[28000] [1045]
Résolu
gautier019
Messages postés
140
Date d'inscription
Statut
Membre
Dernière intervention
-
gautier019 Messages postés 140 Date d'inscription Statut Membre Dernière intervention -
gautier019 Messages postés 140 Date d'inscription Statut Membre Dernière intervention -
Bonjour
J'ai ce script :
dans un fichier php, quand je test en local ça me fait :
"Connexion échouée : SQLSTATE[HY000] [2002] Aucune connexion n?a pu ?tre ?tablie car l?ordinateur cible l?a express?ment refus?e."
sur serveur ça me donne ceci :
"Connexion échouée : SQLSTATE[28000] [1045] Access denied for user 'u776754505_cms'@'localhost' (using password: YES)"
Mes identifiants sont bons (j'ai vérifier), comment faire pour que cela fonctionne ?
Merci d'avance
J'ai ce script :
<?php
date_default_timezone_set('Europe/Paris');
$date = date('d/m/Y');
$heure = date('H:i:s');
$host = "mysql.hostinger.fr";
$user = "u776754505_cms";
$password = "monmotdepasse";
$db = "u776754505_mc";
try {
$connexion = new PDO('mysql:host'.$host.';dbname='.$db.'; charset=utf8', $user, $password, array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
} catch (PDOException $e) {
echo 'Connexion échouée : ' . $e->getMessage();
}
?>
dans un fichier php, quand je test en local ça me fait :
"Connexion échouée : SQLSTATE[HY000] [2002] Aucune connexion n?a pu ?tre ?tablie car l?ordinateur cible l?a express?ment refus?e."
sur serveur ça me donne ceci :
"Connexion échouée : SQLSTATE[28000] [1045] Access denied for user 'u776754505_cms'@'localhost' (using password: YES)"
Mes identifiants sont bons (j'ai vérifier), comment faire pour que cela fonctionne ?
Merci d'avance
A voir également:
- Erreur mysql : SQLSTATE[28000] [1045]
- Mysql community server - Télécharger - Bases de données
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
6 réponses
Bonjour
As-tu vérifié dans le manuel la syntaxe pour une connexion à mysql avec PDO ?
Tu as oublié le = après "host" :
As-tu vérifié dans le manuel la syntaxe pour une connexion à mysql avec PDO ?
Tu as oublié le = après "host" :
$connexion = new PDO('mysql:host='.$host....
Merci j'en encore un petit souci, en local (avec EasyPhp), il me dit
"hôte inconnu", tendis que sur serveur cela se passe comme il faut, y a t'il une config spéciale à mettre ?
"hôte inconnu", tendis que sur serveur cela se passe comme il faut, y a t'il une config spéciale à mettre ?
Avec easyphp, ton hôe n'est certainement pas "mysql.hostinger.fr", mais probablement "localhost". De même que le user est probablement "root" et le mot de passe "" (vide). Quant à la base de données, L'as-tu bien créée avec le nom "u776754505_mc" ? L'as-tu seulement créée ?
Pour t'éviter de modifier tous ces paramètres chaque fois que tu passes d'easyphp au site en ligne, il vaut mieux les mettre dans un petit fichier inclus (par ex. identifiants.php) :
Et dans le script principal, tu remplaces ces lignes par
Quand tu transfères tes scripts de ton PC vers ton hébergeur, tu transfères les autres fichiers mais pas identifiants.php
Pour t'éviter de modifier tous ces paramètres chaque fois que tu passes d'easyphp au site en ligne, il vaut mieux les mettre dans un petit fichier inclus (par ex. identifiants.php) :
<?php(il est préférable de ne pas mettre de ?> à la fin)
$host = ...;
$user = ...;
$password = ...;
$db = ...;
Et dans le script principal, tu remplaces ces lignes par
include identifiants.php;Ce fichier sera différent en local et en ligne.
Quand tu transfères tes scripts de ton PC vers ton hébergeur, tu transfères les autres fichiers mais pas identifiants.php
Je test avec EasyPhp, mais avec les identifiants de la base de donnés dans la location du serveur web, dans le script il n'y a pas de problème, puisque sur le serveur ça fonctionne c'est juste quand je test avec EasyPhp ça ne fonctionne pas et c'est avec le même code.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Non, il n'y a pas de problème dans le script lui-même, je n'ai jamais dit le contraire.
Mais si tu utilises les identifiants que ton hébergeur t'a donnés pour ton site en ligne, ça ne risque pas de marcher avec easyphp. Il faut utiliser les identifiants de php, c'est ce que j'ai essayé de t'expliquer.
Mais si tu utilises les identifiants que ton hébergeur t'a donnés pour ton site en ligne, ça ne risque pas de marcher avec easyphp. Il faut utiliser les identifiants de php, c'est ce que j'ai essayé de t'expliquer.