Bonjour à tous,
Erreur apparue après une mise à jour de l'OS et passage de php 7.4 à php 8.1Fatal error: Uncaught Error: Class "PDO" not found in /var/www/html/logjmh5/src/Models/Base.php:25
Apache2 version 2.4.52
Php 8.1.2
Zend Engine v4.1.2
mysql 8.0.36
OS actuel Linux Mint 21.3 (système à jour)
Apparemment je pense que les modules (PDO entre autre) ne se chargent pas car pas de trace dans le phpinfo. J'ai suivi un nombre de routes google et autre sans trouver la solution à mon problème.
A savoir également une tentative de réinstallation complète du LAMP avec purge mais rien y fait.
Autre problème mon phpmyadmin m'affiche une page blanche, (j'adore les pages blanches). J'ai configuré le php.ini afin qu'il m'affiche les erreurs, mais je suis pas sûr du résultat.
Bref j'ai l'impression de tourner en rond et de perdre mes neurones et avant d'entrevoir la réinstallation complète du système et du reste je me permet de faire appel à votre bonne volonté et votre courage.
Je reste bien sûr à votre dispositionet merci de votre aide.
Au cas où ligne de code qui provoque l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 <?php namespace App\Models; //use \PDO; /** * Définition de la classe Base qui crée les liens vers la base de données * La classe sera appelée à chaque fois qu'une donnée de la base de données sera nécessaire */ class Bdd { //---------------------------------------- //SINGLETON //---------------------------------------- private static $connect = null; private $bdd; private function __construct() { $Host = "localhost"; $Login = "log du phpmyadmin"; $Password = "********"; $Base = "log"; //Création d'un lien à la base de données de type PDO try{ $this->bdd = new \PDO('mysql:host='.$Host.';dbname='.$Base, $Login, $Password, array(\PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8')); // Ligne qui renvoi l'erreur $this->bdd->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); } catch(Exception $e){ die('Erreur : ' . $e->getMessage()); } } public static function getInstance() { if(is_null(self::$connect)) { self::$connect = new Bdd(); } return self::$connect; }
Partager