Afficher les noms des tables et colonnes d'une Bdd Mysql
Bonsoir.
J’affiche un récapitulatif des tables avec leurs colonnes d’une de mes base de données, à l’ancienne, comme ceci
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
<?php
$host="localhost";
$user="root";
$passwd="";
$link = @mysql_connect($host,$user,$passwd);
if (!$link)
{
echo "<h2>Erreur du serveur. Essayez de vous connecter plus tard.</h2>";
die;
}
mysql_connect($host,$user,$passwd);
$linkdb = @mysql_select_db ("matable");
if (!$linkdb)
{
echo "<h2>Erreur de connexion a la BDD. Essayez de vous connecter plus tard.</h2>";
die;
}
mysql_select_db ("matable");$db_name = 'matable';
mysql_select_db($db_name);
$result = mysql_query( 'SHOW TABLES' );
while ($row = mysql_fetch_row($result))
{
echo "<br /><b>$row[0]</b><br />";
$fields = mysql_list_fields("matable", $row[0] );
$columns = mysql_num_fields($fields);
for ($i = 0; $i < $columns; $i++)
{
echo mysql_field_name($fields, $i) . "<br />";
}
}
?> |
Et cela fonctionne parfaitement.
Par contre, voulant le faire en PDO, je n’y arrive pas… (L’âge sans doute)
La connexion parait correcte, mais le reste, malgré mes recherches, je ne trouve pas de solutions.
Il faut dire que j'essaie depuis peu à comprendre PDO, mais les vieilles habitudes.......
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
<?php
//connexion PDO
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=matable;charset=utf8', 'root', '', $pdo_options);
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
// A partir ici je ne trouve pas équivalent en PDO
$result = mysql_query('SHOW TABLES');
while ($row = mysql_fetch_row($result))
{
echo "<br /><b>$row[0]</b><br />";
$fields = mysql_list_fields("matable", $row[0] );
$columns = mysql_num_fields($fields);
for ($i = 0; $i < $columns; $i++)
{
echo mysql_field_name($fields, $i) . "<br />";
}
}
?> |
Pouvez-vous m’aider à passer ce cap !
Merci.