Suite à la connexion à un SGBDR, il faut soit sélectionner la base de données si elle existe déjà, soit la créer si ce n'est pas le cas.
La sélection de bases de données s'effectuent par le truchement de fonctions adaptées.
msql_select_db($nom_base_donnee, $id_connexion); mysql_select_db($nom_base_donnee, $id_connexion); sybase_select_db($nom_base_donnee, $id_connexion); pg_connect( "dbname=nom_base " . "host=nom_serveur " . "port=num_port " . "user=nom_utilisateur " . "password=mot_passe");
La création des bases de données peut être réalisée par des fonctions PHP dévolues à cette tâche.
msql_create_db($nom_base_donnee, $id_connexion); mssql_create_db($nom_base_donnee, $id_connexion); mysql_create_db ($nom_base_donnee, $id_connexion);
Si la création d'une base de données n'est pas possible à l'aide de fonctions, il est possible de créer une base à l'aide d'une requête SQL.
$requete = "CREATE DATABASE nom_base_donnee"; $id_requete = ociparse($requete, $id_connexion); ociexecute($id_requete);
La suppression des bases de données est permises, de la même façon qu'il est possible de les créer.
msql_drop_db($nom_base_donnee, $id_connexion); mssql_drop_db($nom_base_donnee, $id_connexion); mysql_drop_db ($nom_base_donnee, $id_connexion);
Certaines fonctions permettent de retourner la liste des bases de données et de leurs tables.
Exemple [voir]$id_connexion = mysql_connect('localhost', 'administrateur', 'md2N50Oml'); $liste_bases = mysql_list_dbs(); $nb_bases = mysql_num_rows($liste_bases); echo "<h3>Liste des bases de données</h3>"; for($i = 0; $i < $nb_bases; $i++) { $nom_base_donnee = mysql_db_name($liste_bases, $i) . "<br>"; $liste_tables = mysql_list_tables($nom_base_donnee, $id_connexion); $nb_tables = mysql_num_rows($liste_tables); echo "<h3>" . $nom_base_donnee . "</h3>"; echo "<h4>Liste des tables :</h4>"; for($j = 0; $j < $nb_tables; $j++) { echo mysql_tablename($liste_tables, $j) . "<br>"; } }
<!-- 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; for($i = 0; $i < mysql_num_rows($id_liste_bases); $i++) { if(mysql_db_name($id_liste_bases, $i) == '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); $trouve = false; for($i = 0; $i < mysql_num_rows($id_liste_tables); $i++) { if (mysql_tablename($id_liste_tables, $i) == 'tbl_utilisateur') { $trouve = true; } } 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(); ?> |