Extraire rapidement les informations d'une table mysql

Soyez le premier à donner votre avis sur cette source.

Vue 7 466 fois - Téléchargée 573 fois


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

Ajouter un commentaire Commentaires
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
24 févr. 2005 à 17:21
Euh, pas de standard t'es malin, évidemment qu'il y en a un! Avant de créer un langage, tu définis son interface (syntaxe, librairies, protocoles de communication et d'interprétation). C'est juste que comme MS est seul à l'exploiter, forcément il n'y a qu'un seul module serveur. Ce n'est pas un mal en soit!

D'ailleurs, à ma connaissance, il n'y a pas d'interpréteur PHP non-officiel largement utilisé... donc c'est kif kif. Juste une histoire d'aimer l'open source ou pas... pour moi c'est tout vu.

Intéressants les commentaires... Blackwizzard a bien résumé d'ailleurs, dommage que Nix ait baqué les comments d'ailleurs.
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
24 févr. 2005 à 12:38
je disais ça pour la raison suivante :

l'asp est un langage créé mar microsoft je crois... (arrètez moi si je me trompe) donc, un seul interprèteur, donc pas de standar...

pour le html, js et css, il a oublié de se renseigner sur le fait qu'il existe des standars et que ces standars sont respèctés par gecko ou khtml (opera, je sais pas, j'ai jamais testé) et non par ie
cs_windu Messages postés 282 Date d'inscription vendredi 16 mai 2003 Statut Membre Dernière intervention 19 juillet 2006
24 févr. 2005 à 09:51
coucou747> je ne pense pas que le fait qu'il programme en ASP, ou en PHP joue vraiment...
Car dasn les 2 cas, c'est du texte qui est renvoyé par ces 2 langages! non, la où ca peu coincer, c'est au niveau des balises HTML, du css et/ou du javascript
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
24 févr. 2005 à 01:36
nix ne programmes qu'en asp ?
(l'asp est-il un langage standardisé ???)

enfin bon, selon moi, quand on code bien, ça passe sous tout rendu gecko ou khtml... pour qu'une page passe sous ie, faut ajouter le facteur chance et longueur de la page...
fser Messages postés 74 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 23 avril 2005
24 févr. 2005 à 00:41
Merci pour vos optimisations :)
pour info, commentaires ici.
http://linuxfr.org/~MrMax/17211.html

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)