Le but de ce code est, que lorsque la requête routourne les résultats(l'ensemble des cmmande passé),je récupère dans un autre tableau.c'est à dire que chaque commande possède un détails de cmmande,étant que le premier tableau qui contient les information selon le numéro de $id, il peut exister un même $id repété plus qu'une fois et chacun est relative a un détal :
commande:1 *********article1
commande:1 *********article2
commande:1 *********article3
commande:2*********article1
...ainsi de suite
la fonction que je lui transmis le tableau(qui contient tout les articles de la même commande) doit afficher les détails.pour le test que vous m'avez demandé(s'il n'y pas de résultats), est déja assuré, donc il y en a certainement .
ben voila mon code :
$res=mysql_query("select commande.id_commande,nom_user,des_article,Montant_ht,montant_ttc,id_caisse,total_ttc,jj,mm,aa,hh,mn,qte,num_table,MONTANT_ESPECE,MONTANT_CHEQUE_BANQUAIRE,NBR_COUVERTS,TYPE_REMISE_GLOBALE,MONTANT_REMISE,MONTANT_OFFERT,REMISE,TYPE_REMISE from commande,details_commande,ordre,article,users where commande.id_commande=details_commande.id_commande and commande.num_ordre=ordre.num_ordre and article.id_article=details_commande.id_article and commande.id_user=users.id_user AND commande.num_ordre>=\"$num_ordre1\" and commande.num_ordre<=\"$num_ordre2\" order By(commande.num_ordre)");
$num_lignes=mysql_num_rows($res);//nombre de lignes retournées par la requête
$resultats[$num_lignes][17]=array();//Matrice pour stocker les résultats de retour de la requête
$commande[$num_lignes][17]=array();
$i=0;//variable qui contient le nombre des résultats retournées par la requête éxecuté
while($result=mysql_fetch_row($res))
{ if($result[11]<10)
{
$result[11]="0".$result[11];// pour avoir 2 chiffre pour les minutes: au lieu de 5, on doit avoir 05
}
$resultats[$i][0]=$result[7]."-".$result[8]."-".$result[9]." ".$result[10].":".$result[11];//date et heure
$resultats[$i][1]=$result[0];//id commande
$resultats[$i][2]=$result[5];//id caisse
$resultats[$i][3]=$result[1];//nom vendeur
$resultats[$i][4]=$result[3];//montant hors taxe
$resultats[$i][5]=$result[4];//Montant TTC
$resultats[$i][6]=$result[6];//Total TTC
$resultats[$i][7]=$result[2];//Designation de l'article
$resultats[$i][8]=$result[12];//Quantité de l'article vendue
$resultats[$i][9]=$result[13];//numéro de la table pour le cas d'un restaurant
$resultats[$i][10]=$result[14];//Montant espece
$resultats[$i][11]=$result[15];//Montant chèque banquaire
$resultats[$i][12]=$result[16];//Nbre de couvert pour le cas d'un restaurant
$resultats[$i][13]=$result[17];//type de remise globale pour la commande
$resultats[$i][14]=$result[18];//montant de la remise pour la commande
$resultats[$i][15]=$result[19];//montant offert pour la commande
$resultats[$i][16]=$result[20];//remise pour l'article
$resultats[$i][17]=$result[21];//type de la remise pour l'article
$i++;
}
switch($filtre)
{
case 0: //si aucun filtre n'a été utilisé
if($i==0)
{
echo"Aucun enregistrement ne correspond à vos critères de recherche.";
}
else
{ $count=0;$var=0;
$id=$resultats[$count][1]; //sauvgarder le premier id des commandes
while($count<$i)
{
if($resultats[$count][1]==$id )
{
$commnade[$var][0]=$resultats[$count][0];
$commnade[$var][1]=$resultats[$count][9];
$commnade[$var][2]=$resultats[$count][12];
$commnade[$var][3]=$resultats[$count][8];//quantité
$commnade[$var][4]=$resultats[$count][7];//designation article
$commnade[$var][5]=0;//montant article non utilisé
$commnade[$var][6]=$resultats[$count][17];//type remise pour l'article
$commnade[$var][7]=$resultats[$count][16];//la remise pour l'article $commnade[$var][8]=$resultats[$count][13];//type remise globale pour la commande
$commnade[$var][9]=$resultats[$count][15];//montant offert
$commnade[$var][10]=$resultats[$count][14];//montant remise
$commnade[$var][11]=$resultats[$count][4];//montant hors taxe
$commnade[$var][12]=$resultats[$count][5];//montant TTC
$commnade[$var][13]=$resultats[$count][6];//total TTC pour l'article $commnade[$var][14]=$resultats[$count][3];//nom du vendeur
$commnade[$var][15]=$resultats[$count][2];//id caisse
$commnade[$var][16]=$resultats[$count][10];//montant espèce
$commnade[$var][17]=$resultats[$count][11];//montant chèque banquaire
$var++;
}
else
{
voir($commande,$var);
$id=$resultats[$count][1];
$var=0;
}
$count++;
}
}
break;