Php: Requête sur plusieurs tables

Résolu
khalidbelhaj Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
khalidbelhaj Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,



Veuillez m'aider à résoudre ce problème SVP:

Voilà, j'exécute une requête sur plusieurs tables et j'affiche le résultat dans un tableau formaté.
Avec une seule table tout va bien
Mais avec plusieurs champs et plusieurs tables j'ai les messages d'erreur du genre :
Notice: Undefined index: type_exp_dest_name

Voilà l'extrair du code source (merci...)

<?php

// la requete : 
$Req =  "SELECT courrier_depart.id, courrier_depart.is_rep, courrier_depart.date_envoie, courrier_depart.number, ". 
  " type_exp_dest.name as type_exp_dest_name, nature_courrier.name as nature_courrier_name, ". 
  " type_courrier.name as type_courrier_name, mode_courrier.name as mode_courrier_name, ". 
  " destination_arrive.name as destination_arrive_name ". 
  " FROM courrier_depart, type_exp_dest, mode_courrier, nature_courrier, type_courrier, destination_arrive ". 
  " WHERE courrier_depart.type_exp_dest_id = type_exp_dest.id ". 
  " AND courrier_depart.mode_courrier_id = mode_courrier.id ". 
  " AND courrier_depart.nature_courrier_id = nature_courrier.id ". 
  " AND courrier_depart.type_courrier_id = type_courrier.id ". 
  " AND courrier_depart.destination_arrive_id = destination_arrive.id ". 
  " Order By  courrier_depart.id Desc "; 

$result = requete_SQL($Req); 
$nb_total = mysql_num_rows($result); 

$strSQL = ("SELECT * FROM ".$tablename." LIMIT ".$_GET['d'].",".$_GET['l']." "); 
$result = requete_SQL($strSQL); 
$nbRec = mysql_num_rows($result); 
if($nbRec) { echo '<table width="1120" border="1" align="center" cellpadding="0" cellspacing="0">'; } 
// $Clr1b="#FFFFFF";   
// $Clr2b="#EEEEFF"; 
$Clr1b="#dfdfdf";   
$Clr2b="#ebebeb"; 
$Clr="";   
$i=1;  
if($nbRec) 
{  
 // 1ère ligne 
 echo '<tr>'; 
 echo '<td width="*" height="24" align="center" valign="middle" bgcolor="#BDBDFF" ><B>Date d\'envoie</B></td>'; 
 echo '<td width="*"  align="center" valign="middle" bgcolor="#BDBDFF"v class="b02"><B>N° d\'ordre</B></td>'; 
 echo '<td width="*" height="24" align="center" valign="middle" bgcolor="#BDBDFF" ><B>Destination</B></td>'; 
 echo '<td width="*"  align="center" valign="middle" bgcolor="#BDBDFF"v class="b02"><B>Nature courrier</B></td>'; 
 echo '<td width="*" height="24" align="center" valign="middle" bgcolor="#BDBDFF" ><B>Type courrier</B></td>'; 
 echo '<td width="*"  align="center" valign="middle" bgcolor="#BDBDFF"v class="b02"><B>Mode de départ</B></td>'; 
 echo '<td width="*" height="24" align="center" valign="middle" bgcolor="#BDBDFF" ><B>Expéditeur</B></td>'; 
 echo '<td colspan="2" width="60"  align="center" valign="middle" bgcolor="#BDBDFF" class="b02"><B>Actions</B></td>'; 
 echo '</tr>'; 
 while($Rst = mysql_fetch_array($result)) 
 {$i*=-1; 
   if ($i==1) {$Clr=$Clr1b;} else {$Clr=$Clr2b;} 
  echo '<tr>'; 
  echo '<td width="*" height="24" align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo date("d/m/Y", strtotime($Rst['date_envoie'])).'</td>'; 
  echo '<td width="80"  align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo $Rst['number'].'</td>'; 
  echo '<td width="80"  align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo $Rst['type_exp_dest_name'].'</td>'; 
  echo '<td width="80"  align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo $Rst['nature_courrier_name'].'</td>'; 
  echo '<td width="80"  align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo $Rst['type_courrier_name'].'</td>'; 
  echo '<td width="80"  align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo $Rst['mode_courrier_name'].'</td>'; 
  echo '<td width="80"  align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo $Rst['destination_arrive_name'].'</td>'; 
  echo '<td width="30"  align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo '<a href="index.php?mn='.$mn.'&sm='.$sm.'&mj=m&idrec='.$Rst->id.'">'; 
  echo '<img border=0 src="images/b_edit.png" alt="Supprimer" width="16" height="16" /></a></td>'; 
  echo '<td width="30"  align="center" valign="middle" bgcolor="'.$Clr.'" class="b02">'; 
  echo '<a onclick="if (confirm(\'Etes-vous sûr de vouloir supprimer?\')) {f=document.createElement(\'form\');'; 
  echo ' document.body.appendChild(f); f.method = \'POST\'; f.action = this.href; f.submit();} return false'; 
  echo ' " href="index.php?mn='.$mn.'&sm='.$sm.'&mj=s&idrec='.$Rst->id.'">'; 
  echo '<img border=0 src="images/b_drop.png" alt="Supprimer" width="16" height="16" /></a></td>'; 
  echo '</tr>'; 
 } 
echo '</table>'; 
} 
?>
A voir également:

2 réponses

ChrisCompote Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   8
 
Ta variable $result est écrasée

$result = requete_SQL($Req); 
$nb_total = mysql_num_rows($result); 

$strSQL = ("SELECT * FROM ".$tablename." LIMIT ".$_GET['d'].",".$_GET['l']." "); 
$result = requete_SQL($strSQL); 


1
khalidbelhaj Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Oui en effet, j'ai pas fait attention... Merci!


J'ai remplacé :

$strSQL = ("SELECT * FROM ".$tablename." LIMIT ".$_GET['d'].",".$_GET['l']." "); 


par

$strSQL = ($Req." LIMIT ".$_GET['d'].",".$_GET['l']." "); 
0