Tables MySQL
Résolu/Fermé
david77179
Messages postés
155
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
9 janvier 2019
-
14 juin 2011 à 17:14
david77179 Messages postés 155 Date d'inscription dimanche 6 juin 2010 Statut Membre Dernière intervention 9 janvier 2019 - 14 juin 2011 à 19:31
david77179 Messages postés 155 Date d'inscription dimanche 6 juin 2010 Statut Membre Dernière intervention 9 janvier 2019 - 14 juin 2011 à 19:31
Bonjour,
Je souhaiterais afficher sur ma page php le nom des colonnes d'un table MySQL. Je ne sais pas du tout comment je peux faire....
Merci de votre aide
David
Je souhaiterais afficher sur ma page php le nom des colonnes d'un table MySQL. Je ne sais pas du tout comment je peux faire....
Merci de votre aide
David
A voir également:
- Tables MySQL
- Tables des matières word - Guide
- Mysql community server - Télécharger - Bases de données
- Tables ascii - Guide
- Tables des annexes ✓ - Forum Word
- Mysql gratuit ou payant - Forum MySQL
1 réponse
david77179
Messages postés
155
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
9 janvier 2019
22
14 juin 2011 à 19:31
14 juin 2011 à 19:31
J'ai trouvé par moi même la solution; la voici pour ceux qui en aurait besoin:
<?php
/* paramètres du bouts de code pour vous */
$mabase = "XXXXXX";
$matable = "XXXXXX";
$requete =
"SELECT * FROM $matable" .
" LIMIT 0, 10";
/* connection au serveur MySQL */
$id_connection = mysql_connect("localhost", "root", "");
if (!$id_connection) {
echo
"<p style=\"color: red;\">Impossible de se connecter au serveur MySQL.</p>";
}
/* sélection de la base */
$id_selection_base = mysql_select_db($mabase);
if (!$id_selection_base) {
echo
"<p style=\"color: red;\">Impossible de sélectionner la base" .
" <samp>$mabase</samp>.</p>";
}
/* exécution de la requête */
$resultatsRequete = mysql_query($requete, $id_connection);
if (!$resultatsRequete) {
echo
"Lecture impossible, la requête <samp>$requete</samp> est mal formulée.";
}
else {
/* affichage des résultats */
echo
"<table>\n<caption>Résultats pour la requête <samp>$requete</samp></caption>\n";
echo "\t<tr>\n";
/* détection des libellés complets des colonnes (= cas de jonture) */
preg_match_all("[[\w]+\.[\w]+]", $requete, $champsVeritables, PREG_SET_ORDER
);
// les intitulés complets détectés dans $requete sont enregistrés dans l'array
// $champsVeritables
/* affichage des noms des champs, selon le résultat renvoyé par MySQL + les vrai
// noms des en-têtes */
$nombreDeChamps = mysql_num_fields($resultatsRequete);
for ($i = 0; $i < $nombreDeChamps; $i++) {
$nom_colonne = mysql_field_name($resultatsRequete, $i);
if (!empty($champsVeritables)) { // si on a fait une jointure
$nom_colonne .= "<br />({$champsVeritables[$i][0]})";
/* emphase de la table : décommentez la ligne suivante */
//$nom_colonne = preg_replace("[([\w]+)\.]", "<em title=\"nom de la table dont
// le champ fait partie\">$1</em>.", $nom_colonne);
/* autre mise en relief : que la partie différente du nom du champ (après le
// préfixe comprenant un underscore)
/* marche pour dotclear et wordpress, entres autres systèmes */
$nom_colonne = preg_replace("[(.+)_(.+)\.([\w]+)]",
"$1_<em>$2</em>.$3", $nom_colonne);
}
echo "\t\t<th scope=\"col\">$nom_colonne</th>\n";
}
echo "\t</tr>\n";
// FIN affichage des intitulés de champs
/* remplissage de chaque ligne, par les résultats correpondants */
while($ligne = mysql_fetch_array($resultatsRequete,MYSQL_NUM))
{
echo "\t<tr>\n";
foreach($ligne as $valeur)
{
echo "\t\t<td>$valeur</td>\n";
}
echo "\t</tr>\n";
}
echo "</table>";
}
mysql_close($id_connection);
?>
Il faut juste changer les lignes 3 et 4 là ou j'ai mis les X par vos noms de base et de table MySQL.
Il faut aussi que vous verifier les paramètres de connexion a la table juste en dessous (3-4lignes en dessous)
Et ça marche!!!!!!!!!!
Source: https://phpsources.net/code/php/securite/305_passez-de-http-ehttps-avec-une-redirection-automatique
<?php
/* paramètres du bouts de code pour vous */
$mabase = "XXXXXX";
$matable = "XXXXXX";
$requete =
"SELECT * FROM $matable" .
" LIMIT 0, 10";
/* connection au serveur MySQL */
$id_connection = mysql_connect("localhost", "root", "");
if (!$id_connection) {
echo
"<p style=\"color: red;\">Impossible de se connecter au serveur MySQL.</p>";
}
/* sélection de la base */
$id_selection_base = mysql_select_db($mabase);
if (!$id_selection_base) {
echo
"<p style=\"color: red;\">Impossible de sélectionner la base" .
" <samp>$mabase</samp>.</p>";
}
/* exécution de la requête */
$resultatsRequete = mysql_query($requete, $id_connection);
if (!$resultatsRequete) {
echo
"Lecture impossible, la requête <samp>$requete</samp> est mal formulée.";
}
else {
/* affichage des résultats */
echo
"<table>\n<caption>Résultats pour la requête <samp>$requete</samp></caption>\n";
echo "\t<tr>\n";
/* détection des libellés complets des colonnes (= cas de jonture) */
preg_match_all("[[\w]+\.[\w]+]", $requete, $champsVeritables, PREG_SET_ORDER
);
// les intitulés complets détectés dans $requete sont enregistrés dans l'array
// $champsVeritables
/* affichage des noms des champs, selon le résultat renvoyé par MySQL + les vrai
// noms des en-têtes */
$nombreDeChamps = mysql_num_fields($resultatsRequete);
for ($i = 0; $i < $nombreDeChamps; $i++) {
$nom_colonne = mysql_field_name($resultatsRequete, $i);
if (!empty($champsVeritables)) { // si on a fait une jointure
$nom_colonne .= "<br />({$champsVeritables[$i][0]})";
/* emphase de la table : décommentez la ligne suivante */
//$nom_colonne = preg_replace("[([\w]+)\.]", "<em title=\"nom de la table dont
// le champ fait partie\">$1</em>.", $nom_colonne);
/* autre mise en relief : que la partie différente du nom du champ (après le
// préfixe comprenant un underscore)
/* marche pour dotclear et wordpress, entres autres systèmes */
$nom_colonne = preg_replace("[(.+)_(.+)\.([\w]+)]",
"$1_<em>$2</em>.$3", $nom_colonne);
}
echo "\t\t<th scope=\"col\">$nom_colonne</th>\n";
}
echo "\t</tr>\n";
// FIN affichage des intitulés de champs
/* remplissage de chaque ligne, par les résultats correpondants */
while($ligne = mysql_fetch_array($resultatsRequete,MYSQL_NUM))
{
echo "\t<tr>\n";
foreach($ligne as $valeur)
{
echo "\t\t<td>$valeur</td>\n";
}
echo "\t</tr>\n";
}
echo "</table>";
}
mysql_close($id_connection);
?>
Il faut juste changer les lignes 3 et 4 là ou j'ai mis les X par vos noms de base et de table MySQL.
Il faut aussi que vous verifier les paramètres de connexion a la table juste en dessous (3-4lignes en dessous)
Et ça marche!!!!!!!!!!
Source: https://phpsources.net/code/php/securite/305_passez-de-http-ehttps-avec-une-redirection-automatique