Erreur : Echec de la connexion : could not find driver

Axdynx -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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
Axdynx
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > 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 !
0