Php Data Object

2 100 vues

Publié le

Petit tutoriel pour connecter votre application PHP à une base de données MySQL à l'aide de PDO

Publié dans : Technologie
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
2 100
Sur SlideShare
0
Issues des intégrations
0
Intégrations
10
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Php Data Object

  1. 1. PHP Data Object
  2. 2. Mehdi EL KRARI ● Doctorant à l'université Mohammed V – Agdal – ● #Métaheuristiques #TSP #ILS #VNS Freelancer WEB elkrari 2 mars 2014 PHP Data Object 2
  3. 3. Se connecter à MySQL avec PDO ● Paramètres requis : (exemple) – Le nom de l'hôte : (localhost) – La BD : (etudiants) – Login : (admin) – Mot de passe : (monmdp) <?php $bdd = new PDO('mysql:host=localhost;dbname=ecole', 'admin', 'monmdp'); ?> 2 mars 2014 PHP Data Object 3
  4. 4. table 'etudiants' ● matricule ● nom ● prenom ● moyenne 2 mars 2014 PHP Data Object 4
  5. 5. Récupérer les données ● Faire une requête : <?php $reponse = $bdd->query('SELECT * FROM etudiants'); ?> ● Afficher le résultat d'une requête <?php $donnees = $reponse->fetch(); ?> 2 mars 2014 PHP Data Object 5
  6. 6. Récupérer les données <?php // On se connecte à MySQL $reponse = $bdd->query('SELECT * FROM etudiants'); while ($donnees = $reponse->fetch()) { ?> <p> <strong>Etudiant</strong> : <?php echo $donnees['nom']; ?><br /> Le matricule de l'étudiant est : <?php echo $donnees['matricule']; ?>, et il a <?php echo $donnees['moyenne']; ?> de moyenne !<br /> <?php } $reponse->closeCursor(); // Termine le traitement de la requête ?> 2 mars 2014 PHP Data Object 6
  7. 7. Des requêtes en fonction de variables ● Concaténer une variable dans une requête : <?php $reponse = $bdd->query('SELECT nom FROM etudiants WHERE nom='FAMILLE''); ?> <?php $reponse = $bdd->query('SELECT nom FROM etudiants WHERE nom='' . $_GET['nom'] . '''); ?> ● OU Les requêtes préparées <?php $req = $bdd->prepare('SELECT * FROM etudiants WHERE nom = ? AND prenom = ?'); $req->execute(array($_GET['nom'], $_GET['prenom'])); ?> <?php $req = $bdd->prepare('SELECT nom, prenom FROM etudiants WHERE nom = :lenom AND prix = :leprenom'); $req->execute(array('lenom' => $_GET['nom'], 'leprenom' => $_GET['prenom'])); ?> 2 mars 2014 PHP Data Object 7
  8. 8. Des requêtes en fonction de variables <?php // On se connecte à MySQL $req = $bdd->prepare('SELECT nom, prenom FROM etudiants WHERE nom = ? AND prenom = ? '); $req->execute(array($_GET['nom'], $_GET['prenom'])); echo '<ul>'; while ($donnees = $req->fetch()) { echo '<li>' . $donnees['nom'] . ' (' . $donnees['prenom'] . ' )</li>'; } echo '</ul>'; $req->closeCursor(); ?> 2 mars 2014 PHP Data Object 8
  9. 9. Ajouter des données (INSERT) <?php $bdd->exec('INSERT INTO etudiants(nom, prenom, matricule, moyenne) VALUES('FAMILLE', 'Prenom', 4295, 50.96)'); ?> ● Requête préparée : <?php $req = $bdd->prepare('INSERT INTO etudiants(nom, prenom, matricule, moyenne) VALUES(:lenom,:leprenom,:mat,:moy)'); $req->execute(array( 'lenom' => $nom, 'leprenom' => $prenom, 'mat' => $matricule, 'moy' => $moyenne, )); ?> 2 mars 2014 PHP Data Object 9
  10. 10. Modifier des données (UPDATE) <?php $bdd->exec('UPDATE etudiants SET nom = 'FAMILLE' WHERE matricule = 9250'); //cet appel renvoie le nombre de lignes modifiées $nb_modifs = $bdd->exec('UPDATE etudiants SET nom = 'FAMILLE' WHERE matricule = 1526'); echo $nb_modifs . ' entrées ont été modifiées !'; ?> ● Requête préparée : <?php $req = $bdd->prepare('UPDATE etudiants SET nom = :lenom, moyenne = :moy WHERE matricule = :mat'); $req->execute(array( 'lenom' => $nom, 'moy' => $moyenne, 'mat' => $matricule, )); ?> 2 mars 2014 PHP Data Object 10
  11. 11. Effacer des données (DELETE) <?php $bdd->exec('DELETE FROM etudiants WHERE matricule = 9250'); //cet appel renvoie le nombre de lignes modifiées $nb_modifs = $bdd->exec('DELETE FROM etudiants WHERE matricule = 1526'); echo $nb_modifs . ' entrées ont été supprimées !'; ?> ● Requête préparée : <?php $req = $bdd->prepare('DELETE FROM etudiants WHERE matricule = :mat'); $req->execute(array( 'mat' => $matricule, )); ?> 2 mars 2014 PHP Data Object 11

×