Extraire rapidement les informations d'une table mysql


Description

Je suis conscient que l'optimisation de ce code, laisse a désirer, mais à la fois on prend tout alors bon ...
Il se destine principalements aux debutants.
L'objectif est d'extraires toutes les informations d'une table.
Pour celà 2 methodes : print_r et foreach.

Source / Exemple :


<?php

 // Params.php

$serveur = 'localhost';
$utilisateur = 'utilisateur1';
$mdp = 'mot_de_passe';

function afficher($base,$table) {
include('params.php') or die('Erreur lors de l\'inclusion des parametres');

mysql_connect($serveur, $utilisateur, $mdp) or die('Echec de connexion au serveur');
mysql_select_db($base) or die('Erreur de selection de la base. <br />'.mysql_error());

$sql = 'SELECT * FROM table';
   $mqsql = mysql_query($sql) or die('Erreur SQL ! <br />'.mysql_error());

   while ($donnees = mysql_fetch_array($mqsql, MYSQL_ASSOC))     {
     foreach($donnees as $truc => $element)  {

      echo $truc.' vaut ' . $element . '<br />';
                                                     }
mysql_close();

}

function afficher2($base,$table) {
include('params.php') or die('Erreur lors de l\'inclusion des parametres');

mysql_connect($serveur, $utilisateur, $mdp) or die('Echec de connexion au serveur');
mysql_select_db($base) or die('Erreur de selection de la base. <br />'.mysql_error());

$sql = 'SELECT * FROM table' or die('Erreur de selection des infos. <br />'.mysql_error());
   $mqsql = mysql_query($sql);

   while ($donnees = mysql_fetch_array($mqsql))    {

      echo '<pre>';
      print_r($donnees);
      echo '</pre>';
                                                    }

mysql_close();

}

?>

Conclusion :


On va utiliser un fichier params qui contiendra les parametres pour la connexion a la base de donnée.
La premiere solution se connecte donc à la base de donnée, selectionne toutes les informations de la table, les met dans un tableau ( mysql_fetch_array )
Ensuite on parcoure ce tableau grace a la fonction foreach, et on affiche, si truc n'est pas un nombre. J'ai du ajouter ce bricolage sinon j'avais un bug qui affichait :
0 vaut 1, l'affichage normal, puis 1 vaut la valeur precedente etc ...
C'est restrictif si l'un de vous utilise des noms de tablea numériques, mais j'en doute.
La seconde page elle se base sur print_r : et permet d'afficher un tableau facilement.
Notez l'utilisation des balises <pre> sans quoi le texte ne serait pas formaté.

Je ne sais pas trop dans quelle catégorie mettre la source, ni trop quoi poster, raison pour laquel je suis plutot effacé sur ce site. Car trop souvent on voit : déjà vu ici, mais en mieux ...
j'ai un peu cherché ça sans le trouver, donc je poste.
Pour info : j'ai affiché avec cette fonction une table de 12 enregistrements et 53 colones en 0.01428 secondes.

En esperant que ça vous apprenne quelque chose,
Fser

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (fser)