Les requêtes sql permettent essentiellement de récupérer, de modifier,
ou de supprimer les données contenues dans votre bdd. Avant de pouvoir
exécuter une requête il faut se connecter a la base de données comme le
montre le chapitre précédent ...
Commençons par voir a quoi ressemble une requête SQL simple qui affiche des numéros contenue dans une table de ma base de données.
<?php
// on recupere le fichier config.php qui contient nos variables de connexion
include ("config.php");
// on se connecte a la base de donnée
mysql_connect($host,$login,$password) or die(mysql_error());
mysql_select_db($base);
// on lance la requête sql
//==================================================
//==== Requete de selection bdd ====================
//==================================================
$req = "SELECT num FROM table1 ORDER BY id DESC LIMIT 10";
$res = mysql_query($req) or die(mysql_error());
if (mysql_num_rows($res) == 0){
echo 'on affichage un message si il y a aucun resultats
';}
while($A = mysql_fetch_array($res)) {
echo 'Affichage des resultats si il y en a ';
}
//on referme la base de données
mysql_close();
?>
Expliquons donc cette requête mot par mot:
$req contient la requête mysql_query est une commande qui permet d'executer la requête
SELECT num FROM table1 : on sélectionne le champs num dans la table1
ORDER BY id DESC on trie les données par ordre croissant
LIMIT 10 on limite l'affichage aux 10 premiers résultats
$A contient l'exécution de la requête
mysql_fetch_array ("$sql"); on exécute la requête qui est contenue dans la variable sql ($sql)
A ce niveau on a simplement lancer la requête, on l'a exécuter mais elle n'affiche rien voyons comment afficher le résultat de cette requête.
<?php
// on recupere le fichier config.php qui contient nos variables de connexion
include ("config.php");
// on se connecte a la base de donnée
mysql_connect($host,$login,$password) or die(mysql_error());
mysql_select_db($base);
// on lance la requête sql
//==================================================
//==== Requete de selection bdd ====================
//==================================================
$req = "SELECT num FROM table1 ORDER BY id DESC LIMIT 10";
$res = mysql_query($req) or die(mysql_error());
if (mysql_num_rows($res) == 0){
echo 'on affichage un message si il y a aucun resultats';
}
while($A = mysql_fetch_array($res)) {
echo 'Affichage des resultats si il y en a ';
}
// on affiche les resulat de num avec un saut de ligne
echo $A['num']."<br>";
//on referme la base de données
mysql_close();
?>
$A[num] correspond au résultat de la requête dans le champs num, on utilise un simple echo() pour l'afficher ...