La première étape avant de se lancer dans la conception de son site et de créer une connexion directe avec sa base de données si vous avez besoin de stocker des données par la suite.


Nous allons pour créer pour commencer un nouveau dossier à la racine du dossier de votre site que vous nommerez bd. Dans ce dossier vous allez créer un nouveau fichier que l'on appellera connexionDB.php. Dans ce fichier nous allons mettre tout le code qui sera sur cet article.


Page connexionDB.php


Le code ci-dessous est une classe qui permet de créer cette connexion. Cependant il vous faudra renseigner quelques informations essentielles telles que :

  • le nom de l'host, (si vous êtes en local alors l'host se nommera localhost)
  • le nom de votre base de données,
  • l'utilisateur,
  • le mot de passe (sous Windows il se peut qu'il ne faudra pas mettre root).


<?php
// Déclaration d'une nouvelle classe
class connexionDB {
private $host = 'localhost'; // nom de l'host
private $name = 'monsite'; // nom de la base de donnée
private $user = 'root'; // utilisateur
private $pass = 'root'; // mot de passe (il faudra peut-être mettre '' sous Windows)
private $connexion;
function __construct($host = null, $name = null, $user = null, $pass = null){
if($host != null){
$this->host = $host;
$this->name = $name;
$this->user = $user;
$this->pass = $pass;
}
try{
$this->connexion = new PDO('mysql:host=' . $this->host . ';dbname=' . $this->name,
$this->user, $this->pass, array(PDO::MYSQL_ATTR_INIT_COMMAND =>'SET NAMES UTF8',
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
}catch (PDOException $e){
echo 'Erreur : Impossible de se connecter à la BDD !';
die();
}
}
}
?>


Le code ci-dessous vous permettra d'utiliser cette classe afin de créer une connexion pour y réaliser des requêtes SQL.


// Faire une connexion à votre fonction
$DB = new connexionDB();


Fonction query


L'utilité de la fonction query va vous permettre de gagner un gain de vitesse lorsque vous allez écrire une requête SQLafin d'interroger votre serveur.

La fonction query est à utiliser de préférence avec la requête SELECT.


public function query($sql, $data = array()){
$req = $this->connexion->prepare($sql);
$req->execute($data);
return $req;
}


Rajouter cette fonction dans la classe connexionDB.


Ci-dessous le code pour utiliser cette fonction de plusieurs façon.


// Première méthode
$req = $DB->query("SELECT * FROM nom_table");
$req = $req->fetch();
// Deuxième méthode
$req = $DB->query("SELECT * FROM nom_table WHERE id = ?",
array(1));
$req = $req->fetch();
// Troisième méthode
$req = $DB->query("SELECT * FROM nom_table WHERE id = :id",
array('id' => 1));
$req = $req->fetch();


Fonction Insert


Je vous propose une fonction que j'ai nommé insert afin d'insérer, de modifier ou de supprimer des données sur votre serveur.

La fonction insert est à utiliser de préférence avec les requêtes INSERTUPDATE et DELETE.


public function insert($sql, $data = array()){
$req = $this->connexion->prepare($sql);
$req->execute($data);
}


Rajouter cette fonction dans votre classe connexionDB.


Ci-dessous je vous montre comment utiliser cette fonction de plusieurs façon.


<?php// Première méthode avec INSERT
$DB->insert("INSERT INTO nom_table (prenom, nom, age) VALUES (?, ?, ?)",
array("jean", "dupont", 20));
// Deuxième méthode avec UPDATE
$DB->insert("UPDATE nom_talbe SET prenom = ?, nom = ?, age = ? WHERE id = ?",
array("michel", "durant", 22, 1));
// Troisième méthode avec DELETE
$DB->query("DELETE FROM nom_table WHERE id = ?",
array(1));
?>


Rendu final


Voici ce que devra contenir votre fichier connexionDB.php pour poursuivre les différents articles. (Vous pouvez également le faire avec votre propre méthode pour les articles d'après).


<?php
// Déclaration d'une nouvelle classe
class connexionDB {
private $host = 'localhost'; // nom de l'host
private $name = 'monsite'; // nom de la base de donnée
private $user = 'root'; // utilisateur
private $pass = 'root'; // mot de passe
//private $pass = ''; // Ne rien mettre si on est sous windows
private $connexion;
function __construct($host = null, $name = null, $user = null, $pass = null){
if($host != null){
$this->host = $host;
$this->name = $name;
$this->user = $user;
$this->pass = $pass;
}
try{
$this->connexion = new PDO('mysql:host=' . $this->host . ';dbname=' . $this->name,
$this->user, $this->pass, array(PDO::MYSQL_ATTR_INIT_COMMAND =>'SET NAMES UTF8',
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
}catch (PDOException $e){
echo 'Erreur : Impossible de se connecter à la BDD !';
die();
}
}
public function query($sql, $data = array()){
$req = $this->connexion->prepare($sql);
$req->execute($data);
return $req;
}
public function insert($sql, $data = array()){
$req = $this->connexion->prepare($sql);
$req->execute($data);
}
}
// Faire une connexion à votre fonction
$DB = new connexionDB();
?>
+99999
Modifié le 04 mars 2019
Publicité Sitedudev
Cette pub permet au site de vivre ...
Télécharger le code source
Publicité
Cette pub permet au site de vivre ...
Voir d'autres articles
298 vues
Création d'un fichier .htaccess
Le fichier .htaccess est un élément important pour configurer et personnaliser un site web sur un serveur Apache. Dans ce cours, nous allons apprendre comment créer un fichier .htaccess de...
HTACCESS
162 vues
Gestion des exceptions
Gestion des Exceptions en JavaScriptLa gestion des exceptions en JavaScript permet de détecter, signaler et gérer les erreurs qui surviennent lors de l'exécution d'un programme. Les exceptions...
JS
8 529 vues
Introduction
Je vous propose un cours afin de concevoir votre premier site de A à Z incluant un espace membre, un forum & un blog 😎Les objectif de ce cours :L'objectif et de ce familiariser avec les...
Créer son site
4 527 vues
Comprendre ce qu'est SASS et pourquoi il est utilisé
Qu'est-ce que SASS ?SASS, qui signifie Syntactically Awesome Style Sheets, est un préprocesseur CSS. Cela signifie qu'il s'agit d'un outil qui permet d'écrire du code CSS de manière plus efficace...
Sass
2 455 vues
Supprimer un ami
Nous allons repartir sur notre page voir_profil.php afin de compléter le code ci-dessous.<form method="post">   <?php     if(!isset($relation['id'])){   ?>  ...
Créer son site
3 304 vues
Afficher les commentaires
Nous allons reprendre notre page topic.php. Sur cette page nous allons afficher les commentaires postés de vos utilisateur.Dans notre page topic.php nous allons donc afficher les...
Créer son site
4 528 vues
Afficher la liste des articles
Mise en pagePour commencer nous allons créer la page maître de notre blog. C'est cette page qui contiendra tous les articles qui constituerons notre blog.Tout d'abord nous allons créer...
Créer son site
3 779 vues
Notre base de données
Avant de commencer notre cours pour créer notre système d'amis, nous allons commencer par créer notre table de relation.Pour cela nous avons besoin d'un demandeur et d'un receveur.Le demandeur est...
Créer son site
Publicité
Cette pub permet au site de vivre ...