Les requêtes SQL permettent d'accomplir une action sur une base de données comme la sélection d'informations, la création de tables, l'ajout, la suppression ou la modification des enregistrements.
$requete = "SELECT * FROM table WHERE champ = \"valeur\""; $id_resultat = mssql_query($requete, $id_connexion); $id_resultat = msql_query($requete, $id_connexion); $id_resultat = mysql_query($requete, $id_connexion); // analyse de la requête $id_resultat = ociparse($id_connexion, $requete); // exécution de la requête ociexecute ($id_resultat); $id_resultat = pg_exec($id_connexion, $requete); $id_resultat = sybase_query($requete, $id_connexion);
Toutes ces fonctions prennent comme argument une requête SQL qui sera envoyée à la base de données définie par un identificateur de connexion.
$requete = "CREATE TABLE tbl_nom ("
. "nom_champ INTEGER PRIMARY KEY,"
. "nom_champ2 CHAR(50) UNIQUE,"
. "nom_champ3 DATETIME)";
$requete = "INSERT INTO tbl_nom "
. "(nom_champ, nom_champ2, nom_champ3) "
. "VALUES('valeur','valeur2','valeur3')";
$requete = "SELECT * FROM tbl_nom "
. "WHERE nom_champ2 = 'valeur'";
$requete = "DELETE FROM tbl_nom "
. "WHERE nom_champ3 < SYSDATE - 7";
En cas de réussite, les fonctions retournent un identificateur, sinon la valeur est false.
L'identificateur représente le résultat produit par la requête dans la base de données en cours. La variable $id_resultat pourra par la suite être utilisée par d'autres fonctions afin d'exploiter les données disponibles.
$tab_ligne = mssql_fetch_row($id_resultat); $tab_ligne = msql_fetch_row($id_resultat); $tab_asso_ligne = mysql_fetch_assoc($id_resultat); $nb_lignes = ocifetchstatement($id_resultat, $tab_lignes); $tab_ligne = pg_fetch_row($id_resultat, $num_ligne); $tab_ligne = sybase_fetch_array ($id_resultat);
Les requêtes doivent répondre à la syntaxe SQL (Structured Query Language) en général et éventuellement aux singularités des différents éditeurs de SGBDR.
Exemple [voir]Voir le cours SQL
<!-- Formulaire -->
<html>
<body>
<form method="POST" action="traitement.php">
<input type="text" name="nom" size="20" value="nom"><br>
<input type="text" name="prenom" size="20" value="prenom"><br>
<input type="text" name="email" size="20" value="email"><br>
<input type="submit" name="soumission" value="Soumettre">
</form>
</body>
</html>
<?php
// fichier : traitement.php
$id_connex = mysql_connect("localhost","root","emma")
or die("La connexion a échoué !");
$id_liste_bases = mysql_list_dbs($id_connex);
$trouve = false;
while($ligne = mysql_fetch_assoc($id_liste_bases))
{
if ($ligne['Database'] == 'utilisateur')
{
$trouve = true;
}
}
if(!$trouve)
{
mysql_create_db("utilisateur")
or die("La création de la base a échoué !");
}
$id_select = mysql_select_db("utilisateur")
or die("La sélection de la base a échoué !");
$id_liste_tables = mysql_list_tables('utilisateur', $id_connex);
$i = 0;
$trouve = false;
while($ligne = mysql_fetch_array($id_liste_tables))
{
if ($ligne[$i] == 'tbl_utilisateur')
{
$trouve = true;
}
$i++;
}
if(!$trouve)
{
mysql_query("create table tbl_utilisateur "
. "(date CHAR(30) NOT NULL, email CHAR(50) UNIQUE, "
. "nom CHAR(50) NOT NULL)", $id_connex)
or die("La création de la table a échoué !");
}
if($id_select)
{
mysql_query("insert into tbl_utilisateur (date, email, nom) "
. "values ('" . date("d/m/Y H:i:s") . "', '" . $email
. "', '" . $prenom . " " . $nom . "')", $id_connex)
or die("Impossible d'insérer les informations !");
}
else
{
echo "<h3>Impossible de sélectionner la table !</h3>";
}
$id_requete = mysql_query("select * from tbl_utilisateur", $id_connex);
if($id_requete)
{
echo '<table border="0">'
. '<tr bgcolor="#000000" style="color:#FFFFFF">'
. '<th>Date</th><th>eMail</th><th>Nom</th></tr>';
while($ligne = mysql_fetch_array($id_requete))
{
echo '<tr bgcolor ="#FFFF00">'
. '<td>' . $ligne['date'] . '</td>'
. '<td>' . $ligne['email'] . '</td>'
. '<td>' . $ligne['nom'] . '</td>';
echo '<tr>';
}
echo '</table>';
mysql_free_result($id_requete);
}
else
{
echo "<h3>Impossible d'exécuter la requête de sélection !</h3>";
}
mysql_close();
?> |