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. 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
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. 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. 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. 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
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. 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