Remplacer

Fermé
logoni - 4 août 2009 à 17:26
imw Messages postés 233 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 8 septembre 2011 - 5 août 2009 à 08:34
Bonjour,
bjour, j'ai un code dynamique qui permet d'alimenter directement ma base de données sous postgresql mais mon soucis est que :je voudrais avoir un code qui me permet de remplacer les codes numériques par leur valeurs textuelles. ça c'est le code entier :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head>
<title> gestion de projet </title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />


</head>
<body>

<?php
$conn =("host=localhost port=5432 dbname= gdt user=postgres password=gabero");
$dbconn = pg_connect("$conn");
// connexion à une base de données nommée "gdt" sur l'hôte "localhost" avec un
// nom d'utilisateur"postgres" et un mot de passe"gabero"
// éxecution de la requète SQL
$sql = pg_query("select * from projet");
//En-tete du tableau
echo "<table border=\"1\" >
<caption><strong> PROJET</strong></caption>
<tr>
<td>id-projet</td>
<td>nom-projet</td>
<td>code-mo</td>
<td>resultat-projet</td>
<td>montant-projet</td>
<td>code-localisation</td>
<td>id-nature</td>
<td>id-date</td>
<td>code-etat</td>
</tr>";
// utilisation de la boucle tant que
while($infos = pg_fetch_array($sql)) {
// affichage des resultats
echo"<tr>";//ligne du tableau
echo "<td>";echo $infos['id-projet'];echo "</td>";
echo "<td>";echo $infos['nom-projet'];echo "</td>";
echo "<td>";echo $infos['code-mo'] ;echo "</td>";
echo "<td>";echo $infos['resultat-projet'] ;echo "</td>";
echo "<td>";echo $infos['montant-projet'] ;echo "</td>";
echo "<td>";echo $infos['code-localisation'] ;echo "</td>";
echo "<td>";echo $infos['id-nature'] ;echo "</td>";
echo "<td>";echo $infos['id-date'] ;echo "</td>";
echo "<td>";echo $infos['code-etat'];echo "</td>";
echo"</tr>"; //fermeture de la ligne
} //fermeture du tant que
echo "</table>";//fermeture du tableau
pg_close($dbconn);
?>
</body>
</html>
je code me permet d'afficher des lignes du genre

id-projet nom-projet code-mo resultat-projet montant-projet code-localisation id-nature id-date code-etat
1 FORAGE 1 réalisé 500000 1 1 1 1
et je voudrais avoir un code qui m'affiche mes lignes de cette façon suivante:

id-projet nom-projet code-mo resultat-projet montant-projet code-localisation id-nature id-date code-etat
1 FORAGE stp réalisé 500000 Mandé Agriculture 2000-04-12 en cours
vous comprenenez un peu ma préocupation j'ai une table principale qui s'appelle table projet et cette table contient des indentifiants liées à d'autres tables(mo,localisation,nature,date,etat).merci
A voir également:

1 réponse

imw Messages postés 233 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 8 septembre 2011 42
5 août 2009 à 08:34
il te suffit de faire une requete avec les liaisons.

Je te fait un essai, tu adapte pour ton cas précis avec les bon noms des colones :

SELECT 
    p.*,
    m.`nom` as mo,
    l.`ville` as localisation,
    n.`nom` as nature,
    e.`nom` as etat
FROM 
    projet as p, 
    mo as m,
    localisation as l,
    nature as n,
    etat as e
WHERE
         p.`code-mo` = m.`code`
    AND p.`code-localisation`=l.`code`
    AND p.`id-nature`=n.`id`
    AND p.`code-etat`=e.`code`



Bien sur, comme je n'ai pas tous les noms de tes colonnes, il faut adapter ... mais le principe est là.
Tu remarquera que je n'ai pas utiliser la table date ... a priori (sauf cas particulier), il est plus intéressant de mettre directement le champ date au format date (pas besoin de table de liaison).
0