PHP – fonctions mysql

publicité
PHP
mySQL
Extension php_mysql
Connexion à une base de
données
• Établir une connexion
mysql_connect(string server, string
username, string password)
– permet à PHP d’utiliser MySQL avec les
privilèges en lecture / écriture de
l’utilisateur username
– l'entier que renvoie cette fonction est un id
de ressource
connexion persistante
• Établir une connexion persistante
mysql_pconnect(string server, string
username, string password)
– Les connexions persistantes ne sont pas
fermées à la fin de l’exécution du script.
– L’entier renvoyé par cette fonction est aussi
un id de ressource.
sélection d'une base de données
• Sélectionner un base de données
mysql_select_db(string database [, id
ressource identifier])
– utilise éventuellement une connexion
précédemment ouverte
• Fermer une connexion
mysql_close([id ressource identifier])
Exemple typique
if(mysql_connect("localhost","root","monpass"))
{
if(mysql_select_db("ma base"))
{
echo « connexion réussie »;
mysql_close();
}
else
{
die("Cette Base de données n'existe pas");
}
}
Else
{
die("Echec de connexion au serveur!");
}
Exemple concis
@mysql_connect("localhost","root","monpass")) or die("Echec connexion !");
@mysql_select_db("ma base") or die « impossible de sélectionner »);
@mysql_close();
Exécuter du code SQL
• Passer une requête SQL au serveur
mysql_query(string query [,id ressource
identifier])
– renvoie l'état de l'exécution de la requête
pour les commandes de type INSERT
INTO, UPDATE, DELETE, etc (true en cas
de succès, ou false en cas d'échec)
– renvoie un identificateur de résultat
(result_identifier) dans le cas d'une requête
de sélection
Parcours de
d’un requête de sélection
• Parcourir le résultat d’une requête de
sélection ligne par ligne
– mysql_fetch_row ( ressource
result_identifier)
– retourne une ligne du résultat de la requête
sous la forme d’un tableau indexé par des
entiers et passe à la suivante
Parcours de résultat typique
if($result=mysql_query("select nom, prenom
from personne"))
{
while($ligne=mysql_fetch_row($result))
{
echo "Nom : ".$ligne[0]."<br />";
echo "Prénom : ".$ligne[1] ."<br />";
}
}
Parcours de
d’un requête de sélection
• Parcourir le résultat d’une requête de
sélection ligne par ligne
– mysql_fetch_assoc ( ressource
result_identifier)
– retourne une ligne du résultat de la requête
sous la forme d’un tableau indexé par le
noms des champs sélectionnés par la
requête
Parcours de résultat typique
if($result=mysql_query("select nom, prenom
from personne"))
{
while($ligne=mysql_fetch_assoc($result))
{
foreach($ligne AS $champs => $valeur)
{
echo $champs." : ".$valeur."<br />";
}
}
}
Parcours de
d’un requête de sélection
• Parcourir le résultat d’une requête de
sélection ligne par ligne
– mysql_fetch_object ( ressource
result_identifier)
– retourne une ligne du résultat de la requête
sous forme d'un objet ayant pour propriété
le nom des champs sélectionnés par la
requête
Parcours de résultat typique
if($result=mysql_query("select nom, prenom
from personne"))
{
while($obj=mysql_fetch_object($result))
{
echo "Nom : ".$obj->nom."<br />;
echo "Prénom : ".$obj->prenom ."<br />";
}
}
Fonctions utiles
• récupérer les nombres de champs du résultat
mysql_num_fields(resource result_identifier)
• récupérer les nombre de lignes du résultat
mysql_num_rows(resource result_identifier)
• récupérer le nombre de lignes affectées lors
de la dernière commande
mysql_affected_row(resource link_identifier)
– comme mysql_num_rows pour un SELECT
Téléchargement