passer sur une autre table

Invité
Invité n'ayant pas de compte PHPfrance

19 janv. 2006, 12:27

salut tout le monde!

j'ai encore quelques questions... je vais commencer par en poser une :roll:

j'affiche les données de ma table par une sélection de codelieux (chaque codelieux renvoit à un libellelieux que j'appelle au préalable dans ma liste déroulante)
les données affichées sont dans une table, ou il n'y a que le codelieux, les libellieux sont donc dans une autre table... et j'aimerai afficher le libellelieux en titre sur la page qui affiche les données de l'autre table.
j'ai donc essayé de faire une seconde requete mysql pour les afficher mais ca fait tout foirer, techniquement je sais pas comment prendre des données d'une autre table tout en gardant l'affichage des données de la table en cours ...
 $db_link = mysql_connect("$serveur","$user","$mdp") or die;
mysql_selectdb("$bdd") or die;

$codeLieu = $_POST["maliste"];
$requete= "SELECT date, heure, type, prix FROM ag_fev1 WHERE codelieux = '$codeLieu'";

$var = mysql_query("$requete") or die('Erreur Resquete');

//ici j'aimerai pouvoir faire une seconde requete du style 
//$requeteLieux = "SELECT libellelieux from lieux";
//$varlieux = mysql_query("requeteLieux") or die;
//echo '$libellelieux';

$i = 0; 

while ($data=mysql_fetch_assoc($var))
{ 
        if ($i % 2)
            { 
                echo '<tr><td width="50" height="40" class="Ligne1">' . $data['date'] . '</td>'; 
				echo '<td width="50" class="Ligne1">' . $data['heure'] . '</td>'; 
                echo '<td width="380" class="Ligne1">' . $data['type'] . '</td>'; 
                echo '<td width="50" class="Ligne1">' . $data['prix'] . '</td></tr>'; 
                  
            } 
            else 
            { 
				echo '<tr><td width="50" height="40" class="Ligne2">' . $data['date'] . '</td>'; 
                echo '<td width="50" class="Ligne2">' . $data['heure'] . '</td>'; 
                echo '<td width="380" class="Ligne2">' . $data['type'] . '</td>'; 
                echo '<td width="50" class="Ligne2">' . $data['prix'] . '</td></tr>'; 
            } 
     
   $i++; 

}

mysql_close();

?>

}

Invité
Invité n'ayant pas de compte PHPfrance

19 janv. 2006, 13:18

ok, c bon finalement ca marche mais je me demande si ma syntaxe est correcte ou si elle est améliorable
$codeLieu = $_POST["maliste"];
$requete= "SELECT date, heure, type, prix FROM ag_fev1 WHERE codelieux = '$codeLieu'";
$var = mysql_query("$requete") or die('Erreur Requete');

$requetelieux= "SELECT libellelieux FROM lieux where codelieux = '$codeLieu'";
$varlieux = mysql_query("$requetelieux") or die ('erreur');
$datalieux=mysql_fetch_assoc($varlieux);
echo $datalieux['libellelieux'];

Mammouth du PHP | 19672 Messages

19 janv. 2006, 13:22

Et pourquoi deux requêtes au lieu d'une seule, proposition :
$sql = "SELECT date, heure, type, prix, libellelieux ".
       "FROM ag_fevl AS a, lieux AS l ".
       "WHERE a.codelieux = l.codelieux ".
       "AND l.codelieux = '". $codeLieu ."'";
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: