Connexion à une base de données MySQL en PHP

Fermé
Nay - Modifié le 23 avril 2020 à 11:18
 Nay - 23 avril 2020 à 14:53
Bonjour,
Je voulais m’entraîner à manipuler des bases de données comme j'ai appris à le faire en cours mais cette fois en local (avec wamp).
J'ai donc créé une base sur phpmyadmin et essayé de m'y connecter avec un script php.
Malheureusement il y toujours une erreur me disant : "Erreur : Acc�s refus� pour l'utilisateur: 'root'@'localhost' (mot de passe: OUI)".

Voici mon code php :
<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <meta charset="utf-8">
    </head>
    <body>
        <?php
            $servername = 'localhost';
            $username = 'root';
            $password = 'root';

            //On établit la connexion
            $conn = new mysqli($servername, $username, $password);

            //On vérifie la connexion
            if($conn->connect_error){
                die('Erreur : ' .$conn->connect_error);
            }
            echo 'Connexion réussie';
        ?>
    </body>
</html>

EDIT : Ajout des balises de code

Ce code a été récupéré d'un tutoriel sur internet donc je doute que le problème vienne de là.
Le username et le mot de passe sont a priori bons puisque j'arrive a me connecter en passant par phpmyadmin. Le nom du serveur est aussi normalement bon puisque c'est celui indiqué dans les informations de connexion sur phpmyadmin.

Si vous avez une idée d'où le problème peut venir n'hésitez pas à me le dire, ça m'aiderai vraiment.

Merci à tous !
A voir également:

3 réponses

yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
23 avril 2020 à 11:09
bonjour, il est souvent utile, quand on obtient un message d'erreur, de changer quelque chose pour comprendre ce qui provoque le message d'erreur.
dans ce cas, pourrais-tu tester en remplaçant le mot de passe par "bidon", puis tester en remplaçant le nom d'utilisateur par "bidon"?
cela pourra peut-être t'éclairer à propos de la signification du message d'erreur.
0
Bonjour, merci pour votre aide.
J'ai essayé avec un autre mot de passe puis avec un autre username et la nature du message d'erreur est la même dans les deux cas.
Je ne sais pas trop quelle conclusion tirer...
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
23 avril 2020 à 13:34
cela me fait penser qu'il s'agit peut-être d'un problème d'utilisateur et de mot de passe.
es-tu certain du mot de passe de l'utilisateur root?
0
J’ai enfin trouvé le problème !!!
Depuis l’accueil de phpmyadmin, je suis allé dans : Paramètres>Authentification à deux facteurs
et là j’ai vu : « Identification avec mot de passe seul. »

J’ai donc réessayé mon code en enlevant l’attribut $username :
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8">
</head>
<body>
<?php
$servername = 'localhost';
$password = 'root';

//On établit la connexion
$conn = new mysqli($servername, $password);

//On vérifie la connexion
if($conn->connect_error){
die('Erreur : ' .$conn->connect_error);
}
echo 'Connexion réussie';
?>
</body>
</html>

Et là, miracle, ça marche !
Voilà j’espère que mon expérience pourra en aider certains et un grand merci à yg_be de m'avoir aidé.
0