140 likes | 223 Views
mySQL Extension php_mysql. PHP. 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
E N D
mySQL Extension php_mysql PHP
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