Exemples de scripts pour accéder à une base de données MySQL

Les scripts suivants montrent des exemples d'applications que vous pouvez utiliser pour accéder aux fonctions de base de données MySQL.

Créer une table

<?php
$server= "dbXX.1and1.com"; /* Nom d'hôte de la base de données */
$user= "xxxxxx"; /* Nom d'utilisateur de la base de données */
$password= "yyyyyyy"; /* Mot de passe */
$database= "dbxxxxxx"; /* Nom de la base de données */
$table= "test"; /* Nom de la table, au choix */

/* Accès au serveur SQL et création de la table */
MYSQL_CONNECT($server, $user, $password) or die ("<H3>Serveur de la base de données non accessible</H3>");
MYSQL_SELECT_DB($database) or die ( "<H3>La base de données n'existe pas</H3>");

$result=MYSQL_QUERY( "CREATE TABLE test(name varchar(25),email varchar(25),id int(11))");

MYSQL_CLOSE();
?>

Mettre à jour une table

Vous pouvez modifier les entrées d'une table existante en mettant à jour la table.

Avec la requête UPDATE, toutes les entrées dans le champ email qui sont mail@exemple1.fr deviendront mail@exemple2.fr.

<?php
$server= "dbXX.1and1.com"; /* Nom d'hôte de la base de données */
$user= "xxxxxx"; /* Nom d'utilisateur de la base de données */
$password= "yyyyyyy"; /* Mot de passe */
$database= "dbxxxxxx"; /* Nom de la base de données */
$table= "test"; /* Nom de la table, au choix */

/* Accès au serveur SQL et mise à jour d'un champ */
MYSQL_CONNECT($server, $user, $password) or die ("<H3>Serveur de la base de données non accessible</H3>");
MYSQL_SELECT_DB($database) or die ("<H3>La base de données n'existe pas</H3>");

MYSQL_QUERY("UPDATE $table SET email = 'mail@exemple1.fr' WHERE email = 'mail@exemple2.fr'");

MYSQL_CLOSE();
?>

Supprimer une table

Le script suivant vous permet de supprimer une table de la base de données.

 

Veuillez noter : Ne supprimez en aucun cas la base de données, mais seulement des tables individuelles, car la base de données en elle-même ne peut pas être créée à nouveau.

<?php
$server= "dbXX.1and1.com"; /* Nom d'hôte de la base de données */
$user= "xxxxxx"; /* Nom d'utilisateur de la base de données */
$password= "yyyyyyy"; /* Mot de passe */
$database= "dbxxxxxx"; /* Nom de la base de données */
$table= "test"; /* Nom de la table, au choix */

/* Accès au serveur SQL et suppression d'une table */
MYSQL_CONNECT($server, $user, $password) or die ("<H3>Serveur de la base de données non accessible</H3>");
MYSQL_SELECT_DB($database) or die ("<H3>La base de données n'existe pas</H3>");

$result=MYSQL_QUERY( "DROP TABLE $table");

echo "<H1>La table a été supprimée avec succès.</H1>";

MYSQL_CLOSE();
?>

Saisie de données dans une table

<?php
$server= "dbXX.1and1.com"; /* Nom d'hôte de la base de données */
$user= "xxxxxx"; /* Nom d'utilisateur de la base de données */
$password= "yyyyyyy"; /* Mot de passe */
$database= "dbxxxxxx"; /* Nom de la base de données */
$table= "test"; /* Nom de la table, au choix */

/* Accès au serveur SQL */
MYSQL_CONNECT($server, $user, $password) or die ("<H3>Serveur de la base de données non accessible</H3>");
MYSQL_SELECT_DB($database) or die ("<H3>La base de données n'existe pas</H3>");

/* Saisie des valeurs */
MYSQL_QUERY( "INSERT INTO $table VALUES('Jean Dupont','jean.dupont@exemple.fr','1')");
MYSQL_QUERY( "INSERT INTO $table VALUES('Marie Durand','marie.durand@test.com','2')");
MYSQL_QUERY( "INSERT INTO $table VALUES('Thomas Martin','thomas.martin@autreexemple.fr','3')");

/* Afficher le nombre de valeurs saisies */
$nb=MYSQL_NUMROWS(MYSQL_QUERY( "SELECT * FROM $table"));
if ($nb==0):
echo "Aucune valeur saisie";
elseif ($nb> 0):
echo "$nb valeurs saisies";
endif;

MYSQL_CLOSE();
?>

Lire des données / visualiser la table

<?php
$server= "dbXX.1and1.com"; /* Nom d'hôte de la base de données */
$user= "xxxxxx"; /* Nom d'utilisateur de la base de données */
$password= "yyyyyyy"; /* Mot de passe */
$database= "dbxxxxxx"; /* Nom de la base de données */
$table= "test"; /* Nom de la table, au choix */

/* Accès au serveur SQL et requête sur la table */
MYSQL_CONNECT($server, $user, $password) or die ("<H3>Serveur de la base de données non accessible</H3>");
MYSQL_SELECT_DB($database) or die ("<H3>La base de données n'existe pas</H3>");

$result=MYSQL_QUERY( "SELECT * FROM $table order by name");

/* Afficher la table dans un tableau HTML */
echo "<table><tr>";

while ($field=mysql_fetch_field($result)) {
echo "<th>$field->name</th>";
}
echo "</tr>";
while($row = mysql_fetch_row($result)) {
echo "<tr>";
for($i=0; $i < mysql_num_fields($result); $i++) {
echo "<td>$row[$i]</td>";
}
echo "</tr>\n";
}
echo "</table>";

MYSQL_CLOSE();
?>

Lire certaines entrées d'une table

Dans ce script, seules certaines entrées sont lues à partir d'une table. Cela améliore considérablement la vitesse du script, ce qui raccourcit les temps de chargement du site web.

 

Tout au plus les 3 premières entrées sont extraites de la base de données, qui contiennent dans le champ email united, ou qui n'ont que 1&1 IONOS dans le nom du champ.

 

La sélection du champ email n'est pas sensible à la casse avec LCASE().

 

Cette requête est très efficace car seul ce qui est vraiment nécessaire est transmis. Seuls les champs nom et email sont transférés, le dernier champ id est ignoré.

<?php
$server= "dbXX.1and1.com"; /* Nom d'hôte de la base de données */
$user= "xxxxxx"; /* Nom d'utilisateur de la base de données */
$password= "yyyyyyy"; /* Mot de passe */
$database= "dbxxxxxx"; /* Nom de la base de données */
$table= "test"; /* Nom de la table, au choix */

/* Accès au serveur SQL */
MYSQL_CONNECT($server, $user, $password) or die ("<H3>Serveur de la base de données non accessible</H3>");
MYSQL_SELECT_DB($database) or die ("<H3>La base de données n'existe pas</H3>");

$result=MYSQL_QUERY("SELECT name, email
FROM $table
WHERE (name = '1&1 IONOS' OR INSTR(LCASE(email), 'united'))
ORDER BY NAME DESC LIMIT 3
");

/* Afficher la table dans un tableau HTML */
echo "<table border=\"1\" align=center width=50%";
echo "<tr>";
echo "<div color=\"#ffff00\">";
while ($field=mysql_fetch_field($result)) {
echo "<th>$field->name</A></th>";
}
echo "</font></tr>";
while($row = mysql_fetch_row($result)) {
echo "<tr>";
for($i=0; $i < mysql_num_fields($result); $i++) {
echo "<td align=center>$row[$i]</td>";
}
echo "</tr>\n";
}
echo "</table>";

MYSQL_CLOSE();
?>

Supprimer certaines entrées d'une table

<?php
$server= "dbXX.1and1.com"; /* Nom d'hôte de la base de données */
$user= "xxxxxx"; /* Nom d'utilisateur de la base de données */
$password= "yyyyyyy"; /* Mot de passe */
$database= "dbxxxxxx"; /* Nom de la base de données */
$table= "test"; /* Nom de la table, au choix */

/* Accès au serveur SQL et suppression d'une entrée*/
MYSQL_CONNECT($server, $user, $password) or die ("<H3>Serveur de la base de données non accessible</H3>");
MYSQL_SELECT_DB($database) or die ("<H3>La base de données n'existe pas</H3>");

/* Suppression de l'entrée numéro 3 */
MYSQL_QUERY("DELETE FROM $table WHERE id = '3'");

MYSQL_CLOSE();
?>