begin process at 2012 05 31 17:01:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

POO

 > 

Classes & Objets

 > 

Récupération des TOUTES les tables d'une base de données avec PDO


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Récupération des TOUTES les tables d'une base de données avec PDO

vendredi 26 février 2010 à 21:47:31 | Récupération des TOUTES les tables d'une base de données avec PDO

roymatthieu

Bonjour à tous,

Je suis entrain de créer un classe de gestion de backup de site.

Le principe est la sauvegarde des fichiers et des réperoires du serveur et des tables de la base de données et archivage du tout dans un zip.

J'optimise un ancien script qui fonctionnait avec des requêtes mysql_query (script qui fonctionne à la perfection).

J'aimerai effectuer la récupération des tables de la bases en PDO car j'ai adopté PDO depuis un moment déjà.

Je pense avoir compris que dans ce cas précis la requête SHOW TABLE ne fonctionne qu'avec une base de type MYSQL.

J'exécute le code suivant :

Code PHP :

$pdo    = PDO2::getInstance();
			
$query  = 'SHOW TABLES';
			
$query = $pdo -> query($query);
			
$result = $query -> fetch(PDO::FETCH_ASSOC);
				
return $result;



et cela ne me revoye que la première des tables de ma base et non les autres ???

J'ai beau chercher, je ne trouve pas...

Quelqu'un aurait-t'il la solution ???

Merci d'avance


samedi 27 février 2010 à 10:54:45 | Re : Récupération des TOUTES les tables d'une base de données avec PDO

syndrael

Il faut boucler pour avoir toutes les lignes.
Regarde les tutoriaux sur PDO tu comprendras.
S.
samedi 27 février 2010 à 22:39:20 | Re : Récupération des TOUTES les tables d'une base de données avec PDO

roymatthieu


Merci pour ta réponse...

Je n'ai pas de problème pour boucler sur un tableau...

Le code précédent me retourne Array, ce qui est normal mais ce qui l'es moins c'est le contenu du tableau :

J'ai ceci :

Array
(
[Tables_in_xxx] => sys_xx1
)

et je devais avoir plusieurs valeurs, un truc dans le style (la base contient environ 15 tables).

Array
(
[Tables_in_xxx] => sys_xx1
[Tables_in_xxx] => sys_xx2
[Tables_in_xxx] => sys_xx3
...
)

samedi 27 février 2010 à 23:01:48 | Re : Récupération des TOUTES les tables d'une base de données avec PDO

roymatthieu

Réponse acceptée !
J'ai trouvé !

c'est tout con...

c'est $query -> fetchAll(); au lieu de $query -> fetch();

et ça renvoye le tableau correct.

Donc au complet avec affichage des valeurs.

Code PHP :
$pdo    = PDO2::getInstance();
			
$query  = 'SHOW TABLES';
			
$query  = $pdo -> query($query);
			
$result = $query -> fetchAll(PDO::FETCH_ASSOC);
				
while(list ($key, $array) = each($result)){
			
	foreach($array as $table){
				
		echo $table.'<br />';
	}
}



dans ce cas fetchAll renvoie un tableau à deux dimension tandis que fetch ne renvoie qu'une seule dimension.

Merci Syndrael, sans le savoir tu m'as mis sur la voie, merci encore d'avoir pris le temps de répondre.

A+
dimanche 28 février 2010 à 10:35:11 | Re : Récupération des TOUTES les tables d'une base de données avec PDO

syndrael

Je devais être fatigué pour pas te donner cette réponse..
Mais j'avoue que j'utilise MySQLi en direct plutot que PDO.
Mais ils se positionnent différemment.
S.


Cette discussion est classée dans : base, récupération, query, tables, pdo


Répondre à ce message

Sujets en rapport avec ce message

Contenu de la base mysql [ par bonjovi51 ] S@lut Ô programmeurs, j'ai besoin de votre aide. J'aimerai savoir si il est de possible d'afficher les tables de ma base mysql (et non pas le contenu probleme base de donnée mysql [ par morgandetoi06 ] voila j ai une page qui reçoit des variables et qui doit les inserer dans une table "informations" de la base "cv"mais ça me dit "querry failed" je ne base de donnée de jeux et joueurs avec score [ par ekipage2 ] Bonjour à tous,Contexte : base de donnée de jeux et joueurs avec scoreProblème N°1 : update de scoreSi j'écrit$query = "INSERT INTO $table(pseudo, sco récupération d'image dans la base de donné [ par amonra_allan ] bonjours a vous, jai un problemme pour récuperer les images dans la base de donné. lorsque je veux récupérer une image, jobtien ceci:ÿØÿáŠ6Exif\0\0MM\ Récupération de datetime par formulaire [ par danny2004 ] Salut, ma question est un peu stupide... J'ai fais un formulaire qui me permet de remplire ma base de donnée. Chaque ajout dans ma base a un id plus q SVP, récupération de valeur dans une base [ par sema ] hello,je voudrai savoir si il est possible de recupérer dans un .c'est à dire que j'ai stocké dans ma base les chemins des fichiers , et ce que je veu phpMyAdmin / Majuscules [ par djagger ] Salut !je bosses en local (windows) sur une base de données crée sous linux.J'utilise phpmyadmin. Je fais mon taff etc ...Je vais pour exporter ma bas Interroger 2 tables d'une meme base (php+mysql) [ par alex1025 ] Bonjour,Je vous expliqueje veux ajouter un système d'annonce qui est reservé aux membressauf que j'ai 2 types de membres rangées dans 2 tables différe Optimisation de connection a une base de donn?|e SQL [ par Teclis01 ] Voil¨¤ en fait j aimerais savoir comment optimiser les connection a une bas de donn¨¦es SQL. J aimerais savoir ds quel cas on doit se reconnecter a un Selectionner des tables sans savoir qu elles existes [ par tonic1 ] Bonjour a tous,j ai une question très simple:J aimerai pouvoir selectionner l'ensemble des tables existantes dans ma base, mais je ne connais pas à l


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,998 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales