Partage
  • Partager sur Facebook
  • Partager sur Twitter

connection à la base de donnée

Connexion entre Mysql et PHP sous centos 7

    18 janvier 2021 à 13:41:52

    salut à tous.

    Je suis une formation en php et mysql (Concevez votre site web avec PHP et MySQL) sur le site d'openclassroom il y'a quelques temps. Cependant, je rencontre un problème pour afficher mes données ( les données importées dans le phpMyAdmin) sur ma page php, j'ai l'erreur suivante sur ma page php: Erreur : SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/opt/lampp/var/mysql/mysql.sock'.

    J'ai bien excuté les commandées mises sur le site sauf que je travaille avec le système d'exploitation linux centos 7.

    Merci d'avance pour votre comprehension.

    • Partager sur Facebook
    • Partager sur Twitter
      18 janvier 2021 à 14:23:08

      Bonjour,

      peux-tu nous mettre le code qui tente de se connecter à la BDD ?

      Parce que sans ça, difficile de t'en dire plus.

      • Partager sur Facebook
      • Partager sur Twitter
        18 janvier 2021 à 14:33:25

        Bonjour RR!

        Le code source qui me permets de me connecter à la BDD est le suivant:

        <?php
        try
        {
            $bdd = new PDO('mysql:host=localhost;dbname=test;charset=utf8','root','fiacre');
        }
        catch(Exception $e)
        {
            die('Erreur : '.$e->getMessage());
        }
        $reponse = $bdd->query('SELECT*FROM jeux_video');
        $donnees = $reponse->fetch();

        • Partager sur Facebook
        • Partager sur Twitter
          19 janvier 2021 à 12:12:37

          Bonjour,

          question bête mais est-ce que le couple identifiant / mot de passe est correct ?

          Et ta bdd s'appelle bien "test" ?

          Ne sachant pas comment ton utilisateur root est créé, tu peux tenter de remplacer localhost par 127.0.0.1 et voir si ça fonctionne.

          De toute façon, pour des raisons de sécurité, il n'est pas recommandé d'utiliser root pour se connecter à ta BDD.
          Il vaudrait mieux que tu créé un utilisateur spécifique à ta BDD, qui ne possède des droits que sur cette BDD.

          • Partager sur Facebook
          • Partager sur Twitter
            19 janvier 2021 à 13:39:09

            > Ne sachant pas comment ton utilisateur root est créé, tu peux tenter de remplacer localhost par 127.0.0.1 et voir si ça fonctionne.

            Bonne idée, ça forcerait une connexion en TCP au lieu de par socket Unix local. A moins que :

            • MySQL ne soit pas démarré
            • ce ne soit pas localhost que tu doives utiliser (MySQL résidant sur une autre "machine" par exemple)

            Sinon c'est que PHP ne cherche pas cette socket (paramètre pdo_mysql.default_socket) au même endroit que MySQL est configuré (par la directive socket) pour la créer.

            D'ailleurs si phpMyAdmin fonctionne, il faudrait regarder comment il est configuré et comparer ces informations à ton DSN.

            -
            Edité par julp 19 janvier 2021 à 13:39:50

            • Partager sur Facebook
            • Partager sur Twitter

            connection à la base de donnée

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown