Erreur : Echec de la connexion : could not find driver

Signaler
-
Messages postés
32948
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 juin 2021
-
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
A voir également:

1 réponse

Messages postés
32948
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 juin 2021
3 557
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 :
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
Messages postés
32948
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 juin 2021
3 557 > Axdynx
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 !