Bonjour Invité,
Voici le premier TD d'une longue série.
Pour ce premier TD nous allons aborder le SQL, nous allons créer quelque fonctions qui devront vous facilité la vie du points de vue de la programmation de vos sites et autres. Tous ce qui si sera pour les débutants, car il s'agit de simple fonction. Après j'aborderai la notion OO (Orientée Objet).
Pré-requis :
Dans la suite de se TD nous allons donc créer des fonctions qui vont prendre en charge SQL.
Attends un peu, pourquoi ne pas utiliser les fonctions natif de PHP ? Tel que mysql_connect(), mysql_close(); ?
Voilà quel est bonne comme question.
Comme vous le savez pour faire une requete sous PHP il faut faire :
Mais si vous faite comme cela vous ne prenez pas en compte les "possible" erreurs de SQL
Bah dans ce cas il suffit juste de rajouter or die() ?
Oui, bien sur vous avez raison, mais avec un peu de jugeotte vos fonctions vos pouvoir prendre natifement la gestion des erreurs. Et puis comme tous le monde le sait un programmeur est d'abord et avant tout un gros feignant.
Voici une liste de fonction que nous allons élaborer ensemble.
Voila alors suivez le guide et partons pour une p'tit balade.
1°) SQL_connect
Voyons comment on se connecte a une base de données MySql sous PHP :
La comme vous pouvez le voir c'est quelque chose de relativement simple à utiliser. Mais il n'y a pas de gestion d'erreur tel que 'or die'. Nous allons donc faire la fonction pour pouvoir se connecter a une base MySql.
Voilà, pour le moment rien de bien compliqué, si vous avez bien suivit les cours sur le Site du Zér0, alors vous savez comment créer une fonction.
Dans la fonction original, il y a plusieur paramètre qui sont passés comme l'HOST, le LOGIN et le MOT DE PASSE.
Donc c'est reparti pour un tour.
Voilà, qui est fait, la avec ça vous avez une jolie fonction qui sert a rien, puisque elle ne fait que se connecter à MySql.
Ouias mais attends pourquoi ta mis '$connect = mysql_connect()' ?
Pour la simple et bonne raison, qu'avec ceci nous allons pouvoir faire le système d'erreurs.
Ouh là, c'est quoi ça ? Pourquoi ta pas utilisé 'or die' ?
D'abord, 'die()' est un alias de 'exit()'.
De plus il semblerai que ça soit la methode conseiller à utiliser.
Bien sur vous pouvez changer ce qu'il y a dans le 'if', vous pouvez faire une redirection, vers une page d'erreurs ou autre.
Peut tu expliquer plus en détails comment cette fonction marche ?!?
D'abord on effectue la connexion à MySql, le p'tit '@' devant ne sert juste à ne pas afficher les messages d'erreurs. Si la connexion est réussi alors cela renvoie TRUE ou FALSE si ce n'est pas bon.
Ensuite la condition 'if', dit que si $connect n'est pas bon, sous-entendu qu'il est égal à FALSE alors, on exécute la condition.
Puis on retourne $connect, ce n'est pas obligatoire mais c'est mieux de le faire...
Et pour l'utiliser il suffit de faire comme suit :
Voilà rien de plus simple, bon pour la suite, je ne vais pas tous expliquer, j'espere que vous avez compris le principe.
2°) SQL_select_db
3°) SQL_query
4°) SQL_select
5°) SQL_close
Voili, voilou, c'est içi que se termine mon premier TD. En esperant que cela pourra vous aidez...
Voici le premier TD d'une longue série.
Pour ce premier TD nous allons aborder le SQL, nous allons créer quelque fonctions qui devront vous facilité la vie du points de vue de la programmation de vos sites et autres. Tous ce qui si sera pour les débutants, car il s'agit de simple fonction. Après j'aborderai la notion OO (Orientée Objet).
Pré-requis :
- Connaitre par coeur le tuto de M@teo21 sur le SdZ
- Avoir quelque notion en SQL, celle du SdZ suffissent amplement
- Avoir envie
- Vouloir progresser
Dans la suite de se TD nous allons donc créer des fonctions qui vont prendre en charge SQL.
Attends un peu, pourquoi ne pas utiliser les fonctions natif de PHP ? Tel que mysql_connect(), mysql_close(); ?
Voilà quel est bonne comme question.
Comme vous le savez pour faire une requete sous PHP il faut faire :
- Code:
<?php
mysql_query(votre_requete_SQL);
?>
Mais si vous faite comme cela vous ne prenez pas en compte les "possible" erreurs de SQL
Bah dans ce cas il suffit juste de rajouter or die() ?
Oui, bien sur vous avez raison, mais avec un peu de jugeotte vos fonctions vos pouvoir prendre natifement la gestion des erreurs. Et puis comme tous le monde le sait un programmeur est d'abord et avant tout un gros feignant.
Voici une liste de fonction que nous allons élaborer ensemble.
- SQL_connect
- SQL_select_db
- SQL_query
- SQL_select
- SQL_close
Voila alors suivez le guide et partons pour une p'tit balade.
1°) SQL_connect
Voyons comment on se connecte a une base de données MySql sous PHP :
- Code:
<?php
mysql_connect("HOST", "LOGIN", "PASSWORD");
?>
La comme vous pouvez le voir c'est quelque chose de relativement simple à utiliser. Mais il n'y a pas de gestion d'erreur tel que 'or die'. Nous allons donc faire la fonction pour pouvoir se connecter a une base MySql.
- Code:
<?php
function SQL_connect()
{// Fonction de connection à MySql
}
?>
Voilà, pour le moment rien de bien compliqué, si vous avez bien suivit les cours sur le Site du Zér0, alors vous savez comment créer une fonction.
Dans la fonction original, il y a plusieur paramètre qui sont passés comme l'HOST, le LOGIN et le MOT DE PASSE.
Donc c'est reparti pour un tour.
- Code:
<?php
function SQL_connect ($host, $login, $password)
{// Fonction de connection à MySql
$connect = mysql_connect ($host, $login, $password);
return $connect;
}
?>
Voilà, qui est fait, la avec ça vous avez une jolie fonction qui sert a rien, puisque elle ne fait que se connecter à MySql.
Ouias mais attends pourquoi ta mis '$connect = mysql_connect()' ?
Pour la simple et bonne raison, qu'avec ceci nous allons pouvoir faire le système d'erreurs.
- Code:
<?php
function SQL_connect ($host, $login, $password)
{// Fonction de connection à MySql
$connect = @mysql_connect ($host, $login, $password);
if (!$connect)
{
exit('Problème lors de la connexion à MySql');
}
return $connect;
}
?>
Ouh là, c'est quoi ça ? Pourquoi ta pas utilisé 'or die' ?
D'abord, 'die()' est un alias de 'exit()'.
De plus il semblerai que ça soit la methode conseiller à utiliser.
Bien sur vous pouvez changer ce qu'il y a dans le 'if', vous pouvez faire une redirection, vers une page d'erreurs ou autre.
Peut tu expliquer plus en détails comment cette fonction marche ?!?
D'abord on effectue la connexion à MySql, le p'tit '@' devant ne sert juste à ne pas afficher les messages d'erreurs. Si la connexion est réussi alors cela renvoie TRUE ou FALSE si ce n'est pas bon.
Ensuite la condition 'if', dit que si $connect n'est pas bon, sous-entendu qu'il est égal à FALSE alors, on exécute la condition.
Puis on retourne $connect, ce n'est pas obligatoire mais c'est mieux de le faire...
Et pour l'utiliser il suffit de faire comme suit :
- Code:
<?php
$connect = SQL_connect('localhost', 'root', '');
// OU
SQL_connect('localhost', 'root', '');
?>
Voilà rien de plus simple, bon pour la suite, je ne vais pas tous expliquer, j'espere que vous avez compris le principe.
2°) SQL_select_db
- Code:
<?php
function SQL_select_db ($db_name)
{// Fonction de selection de base de donnée MySql
$select = @mysql_select_db ($db_name);
if (!$select)
{
exit('Erreur lors de la sélection de la base de donnée Mysql.');
}
return $select;
}
// Utilisation
$select = SQL_select_db('php');
?>
3°) SQL_query
- Code:
<?php
function SQL_query ($query)
{// Fonction de requete MySql
$requete = @mysql_query ($query);
if (!$requete)
{
exit('Erreur MySql');
}
return $requete;
}
// Utilisation
$select = SQL_query('INSERT INTO db VALUE ("")');
?>
4°) SQL_select
- Code:
<?php
function SQL_select($select)
{// Fonction de requete avec retour en array
$requete = @mysql_query ($select);
if (!$requete)
{
exit('Erreur lors de la sélection de la base de donnée Mysql.');
}
$requete = mysql_fetch_assoc($requete);
return $requete;
}
// Utilisation
$select = SQL_select('SELECT * FROM db');
?>
5°) SQL_close
- Code:
<?php
function SQL_close()
{// Fonction de requete avec retour en array
$connect = @mysql_close ();
if (!$connect)
{
exit('Erreur de fermeture de la connexion MySql');
}
return $connect;
}
// Utilisation
$close = SQL_close();
// OU
SQL_close();
?>
Voili, voilou, c'est içi que se termine mon premier TD. En esperant que cela pourra vous aidez...
Merci, Single Dark
Dernière édition par Single Dark le Mer 9 Sep - 22:12, édité 4 fois