le script de connexion PDO de rawsrc
Bonjour,
pour une connexion PDO, j'ai utilisé le script de rawsrc :
classes/PDO.php :
Code:
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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| ?php
declare(strict_types=1);
namespace classes\PDO;
/**
* TUTORIAL DVP SUR LE CONCEPT MVC : MODÈLE-VUE-CONTRÔLEUR
* @link https://www.developpez.net/forums/blogs/32058-rawsrc/b7786/developpement-selon-l-approche-mvc-modele-vue-controleur-retour-theorie/
* @link https://www.developpez.net/forums/blogs/32058-rawsrc/b7804/developpement-selon-lapproche-mvc-modele-vue-controleur-cas-pratique/
*/
class PDO
extends \PDO
{
/**
* @var \PDO
*/
private static $pdo = null;
public function __construct()
{
if (self::$pdo === null) {
self::connect();
}
return self::$pdo;
}
/**
* @param string scheme Ex: mysql pgsql...
* @param string $host Adresse IP du serveur
* @param string $database Nom de la base de données
* @param string $user Nom de l'utilisateur
* @param string $pwd Mot de passe de la connexion
* @param string $port Numéro du port pour la connexion
*/
private static function connect(string $scheme = DB_SCHEME, string $host = DB_HOST, string $database = DB_NAME,
string $user = DB_USER, string $pwd = DB_PWD, string $port = DB_PORT)
{
$dsn = "{$scheme}:host={$host};dbname={$database};";
if ((int)($port)) {
$dsn .= "port={$port};";
}
try {
self::$pdo = new \PDO($dsn, $user, $pwd, [
\PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION,
\PDO::ATTR_DEFAULT_FETCH_MODE => \PDO::FETCH_ASSOC,
\PDO::ATTR_EMULATE_PREPARES => false
]);
} catch (\PDOException $e) {
throw $e;
}
} |
connectdb.php :
Code:
1 2 3 4 5 6 7 8 9 10 11
| <?php
define('DB_SCHEME','mysql');
define('DB_HOST','localhost');
define('DB_NAME','tickets');
define('DB_PORT','3306');
define('DB_USER','root');
define('DB_PWD','');
include("classes/PDO.php");
use classes\PDO;
$pdo=new PDO();
var_dump($pdo); |
Citation:
ArgumentCountError: PDO::__construct() expects at least 1 parameter, 0 given in C:\wamp64\www\ticket\connectdb.php on line 10
C'est quoi ce message d'erreur alors que __construct() n'attend aucun argument ?