Publié le 03/06/2010
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Se connecter et faire parler une base de donnee MySQL

Comment afficher la structure d'une base de donnée, comme le ferait PhpMyAdmin avec un script PHP. Le but du code source est de lister les tables contenues dans la base et pour chacune d'elle afficher la définition des champs qui la constitue.

Afficher les tables et les champs d'une base de donnée

A partir d'un script php, de nombreuses données sont retournées à partir d'une base de données MySQL:
- mysql_list_dbs: noms des bases de données,
- mysql_list_tables: noms des tables contenues dans une base de données,
- une requete SHOW COLUMNS: définition des champs d'une table.

<?php
//Variable - à remplacer par vos identifiants
$host='mysql_server';
$user='username';
$pass='password';
$db='myDB';
 
//Connecter à la DB
$link=mysql_connect($host, $user, $pass);
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
/**
 * Lister les bases de données
 */
$rs_dblist = mysql_list_dbs($link);
$dblist=Array();
echo "Base de donnees sur: ".$host.'<br>';
while ($row = mysql_fetch_object($rs_dblist)) {
    array_push($dblist, $row->Database);
    echo $row->Database."<br>";
}
 
/**
 * Lister les tables contenues dans une base de données
 */
$rs_tblist = mysql_list_tables($dblist[1], $link);
$tblist=Array();
echo "<br>Tables dans la DB: ".$dblist[1].'<br>';
while ($row = mysql_fetch_row($rs_tblist)) {
    array_push($tblist, $row[0]);
    echo $row[0]."<br>";
}
 
/**
 * Lister le nom des colonnes d'une table
 */
$rs_collist = mysql_query("SHOW COLUMNS FROM ".$tblist[0]);
echo "<br>Champs dans la table: ".$tblist[0].'<br>';
while ($row = mysql_fetch_assoc($rs_collist)) {
    echo $row['Field'].', '.$row['Type']."<br>";
}
 
mysql_close($link);

Ce script PHP permet de se construire une application de type PhpMyAdmin pour gérer ses bases de données. En effet sans connaitre la structure et les champs d'une table, le script s'adapte à toutes les bases de données.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
php5 - db
Mise a jour
03/06/2010
Visualisation
vu 2143 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 267 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Marcos dans java

Bon travail , mais il a quelque chose d'etrange ! Je devais faire l'interface publique de classe avec des variables de position separees Position NORMAL = null; Position RIGHT = null; et posit...

Publié par math dans java

Salut, quelle est la modification a faire pour pouvoir utiliser une webcam usb qui n'est pas une logitech?

Publié par pidjey dans php5

J'ai bien lu mais c'est vraiment trop fort et trop dur pour le moment, je sais pas vraiment comprendre vos syntaxes, elles sont enormes et moi, je ne suis qu'encore un debutant en PHP et il faudrait p...

Publié par nico dans java

Petite erreur constate.
Apparemment il faut remplacer :
&mailTo = &?body=Envoyer un email avec Java
par &mailTo = < et commercial sans '<' et '>' &body=Envoyer un email avec Java

Publié par Do dans tuto

Et lorsque l'on a un recordset a parcourir ? Que faut-il passer a la vue ? ligne par ligne ou un tableau ? ?
Le PHP est a lui seul deja un systeme de template :
>?php
echo $titre;
?>