Téléchargez la fiche d`utilisation des fonctions MySQL

Transcription

Téléchargez la fiche d`utilisation des fonctions MySQL
UTILISATION DES FONCTIONS MySQL
On retrouvera toujours la même séquence:
1- Connexion à la base de données
MYSQL_CONNECT
2- Choix de la base de données
MYSQL_SELECT_DB
3- Opérations sur la base de données: Requêtes SQL
MYSQL_QUERY
4- Exploitation des résultats de la requête.
5- Déconnexion de la base de données
MYSQL_CLOSE
Ces cinq opérations constituent le processus général d'accès à la base de données.
La quatrième étape va introduire une grande variété d'opérations (affichage des résultats, tris,
élaboration d'autres requêtes en fonction du résultat de la première...).
Cette étape sera celle sur laquelle le gros du travail sera fait.
LES FONCTIONS MySQL
MYSQL_CONNECT http://www.php.net/manual/fr/function.mysql-connect.php
Prototype: (simplifié)
resource mysql_connect([string $server, string $username, string
$password)
Paramètres d'entrée:
• server :
Le serveur MySQL. Il peut aussi inclure le numéro de port. C'est-à-dire
"hostname:port" ou le chemin vers le socket local, c'est-à-dire ":/path/to/socket" pour
localhost.
• Username: Le nom d'utilisateur.
• password : Le mot de passe.
Valeurs de retour:
Retourne l'identifiant de connexion MySQL en cas de succès ou FALSE si une erreur survient.
Utilisation:
$id_connexion=mysql_connect("localhost","root","");
if ($id_connexion)
{
…
// Connexion OK, on peut continuer
}
else die('Connexion impossible: '.mysql_error());
MYSQL_SELECT_DB: http://www.php.net/manual/fr/function.mysql-select-db.php
Prototype:
bool mysql_select_db(string $database_name[,resource $link_identifier])
Paramètres d'entrée:
• database_name: Le nom de la base de données à sélectionner.
• link_identifier: La connexion MySQL. S'il n'est pas spécifié, la dernière connexion
ouverte avec la fonction mysql_connect() sera utilisée.
Valeurs de retour:
Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.
Utilisation:
$data_base='ma_base_de_donnee';
$db_selected=mysql_select_db($data_base,$id_connexion);
if(!$db_selected)
{
die('Impossible de sélectionner la BDD: '.mysql_error());
}
else
{
…
// Base de donnée sélectionnée, on peut poursuivre
}
MYSQL_QUERY
http://www.php.net/manual/fr/function.mysql-query.php
Prototype:
resource mysql_query( string $query [, resource $link_identifier])
Paramètres d'entrée:
• query: Une requête SQL. La chaîne de requête ne doit pas se terminer par un pointvirgule. Les données contenues dans la requête doivent être échappées proprement.
• link_identifier: La connexion MySQL. S'il n'est pas spécifié, la dernière connexion
ouverte avec la fonction mysql_connect() sera utilisée.
Valeurs de retour:
D'une façon générale, la valeur de retour sera FALSE en cas d'erreur.
En cas de succès, la valeur de retour dépend du type de requète:
• Pour les requêtes INSERT, UPDATE, DELETE, DROP, etc., mysql_query() retourne TRUE .
•
Pour les requêtes du type SELECT, SHOW, DESCRIBE, EXPLAIN et les autres requêtes
retournant un jeu de résultats, mysql_query() retournera une ressource. La ressource de
résultat retournée doit être passée à la fonction mysql_fetch_array(), et les autres fonctions
permettant d'explorer le résultat des tables, pour accéder aux données retournées.
Utilisez mysql_num_rows() pour trouver le nombre de lignes retournées pour une requête du type
SELECT ou mysql_affected_rows() pour trouver le nombre de lignes affectées par les requêtes du
type DELETE, INSERT, REPLACE, ou UPDATE.
Utilisation:
$requete="....";
// Ecrire la requète entre les guillemets
$reponse= mysql_query("requête SQL") or die(mysql_error());
MYSQL_CLOSE
http://www.php.net/manual/fr/function.mysql-close.php
Prototype:
bool mysql_close ([ resource $link_identifier ] )
Paramètres d'entrée:
• link_identifier: L'identifiant de connexion MySQL obtenu par mysql_connect()
Valeurs de retour:
Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.
Utilisation:
$code_fermeture=mysql_close($id_connexion);
if (!$code_fermeture) echo 'Erreur de fermeture';
else
{
…
// Poursuite du script
EXEMPLE COMPLET
$host='localhost';
$login='root';
$mdp='...';
$db='ma_bdd';
// CONNEXION AU SERVEUR MYSQL
$id_connexion=mysql_connect($host,$login,$mdp);
if (!$id_connexion)
{
die('Connexion impossible : ' . mysql_error().'. <br />');
}
else
{
// SELECTION DE LA BDD
$db_selected=mysql_select_db($db);
if (!$db_selected) die ('<br>Impossible de s&eacute;lectionner
la base de donn&eacute;es : ' . mysql_error().'. <br>');
else
{
$requete="....";
// Elaboration de la REQUETE
$ressource=mysql_query($requete) or die (mysql_error());
if (!$ressource)
{
echo '<br>Erreur requete: '.mysql_error().'.<br>';
}
else
{
// TRAITEMENT DE LA REQUETE
while ($resultat=mysql_fetch_array($ressource))
{
$temp=$resultat['nom_champ'];
...
}
// FIN DE TRAITEMENT, FERMETURE
$code_fermeture=mysql_close($id_connexion);
if (!$code_fermeture) echo 'Erreur de fermeture';
else echo 'Processus terminé avec succès.<br />';
}
}
}