Erreur : Echec de la connexion : could not find driver

Fermé
Axdynx - 16 déc. 2020 à 16:47
jordane45 Messages postés 36599 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 3 décembre 2022 - 17 déc. 2020 à 16:10
Bonjour,
J'ai le même problème mais j'utilise une base de données de type mariadb comme ça à changer il y a quelques temps. J'ai tester avec les deux mais rien à faire toujours la même erreur.

code
<!DOCTYPE html>
<html>
<head>
<script src="jquery-3.5.1.min.js"></script>
<script src="script.js"></script>
</head>
<body>
<?php

$serveur = "*";
$port = "3306";
$login = "u81_HkU88IraGk";
$pass = "*";
$dbname = "s81_variable";


try{
$bdd = "mysql:host=".$serveur.";dbname=".$dbname.";port=".$port;
$connection = new PDO( $bdd, $login, $pass);
echo 'Connexion à la base de données réussie';
}

catch(Exception $e){
echo 'Echec de la connexion : ' .$e->getMessage();
}
?>
<header>
</header>
<h1>
</h1>

</body>


</html>



Configuration: Windows / Chrome 87.0.4280.88

1 réponse

jordane45 Messages postés 36599 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 3 décembre 2022 4 420
16 déc. 2020 à 21:12
Bonjour,

Tu bosses en local sur ton ordi ou sur un serveur ?
Si en local, avec quel logiciel ?
Si sur un serveur, chez quel hébergeur ?
Quelle version de PHP est installée ?
As tu vérifié dans le php.ini que l'extension PDO mysql est activée ( au pire, faire un phpinfo pour le vérifier )

Essaye ceci
<?php
//Affichage des erreurs PHP
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

//connexion à la bdd avec activation des erreurs PDO
$serveur = "*"; // si en local,  locahost ou 127.0.0.1
$port = "3306";
$login = "u81_HkU88IraGk";
$pass = "*";
$dbname = "s81_variable";

try{
  $connection =new PDO('mysql:host='.trim($serveur).';dbname='.trim($dbname).';charset=utf8;port='.$port, trim($login), trim($pass));
  $connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);// Activation des erreurs PDO
  $connection->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
} catch(PDOException $e) {
  die('Erreur : ' . $e->getMessage());
}

?>
<!DOCTYPE html>
<html>
  <head>
    <title>Test</title>
    <meta charset="utf-8"> 
  </head>
  <body>
    <header>
    </header>
    <h1> Titre de niveau 1 </h1>

    <!-- Il est préférable de placer les JS à la fin avant le </body> -->
    <script src="jquery-3.5.1.min.js"></script>
    <script src="script.js"></script>
  </body>
</html>


Un peu de lecture au passage pour l'utilisation de PDO:

Et pour l'écriture de ton code php :
0
Je suis en local et je fonctionne avec vsc et j'utilise une extension de vsc pour lire le php. Problème il ne met pas de php.ini donc je voudrai trouver un moyen de le définir. L'extension c'est php serveur
0
jordane45 Messages postés 36599 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 3 décembre 2022 4 420 > Axdynx
17 déc. 2020 à 16:10
Si tu es en LOCAL, tu dois bien avoir quelque chose qui permet d'émuler un "serveur" sur lequel tourne php et mysql (mariadb ) .. ???
Un logiciel tel que WAMP, ou XAMPP, ou ( ma préférence) LARAGON ?
Car si tu n'as que VSC .. normal que ça ne marche pas !
0