Construction de tableau par while php

Fermé
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 - 23 févr. 2009 à 16:32
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 - 24 févr. 2009 à 08:12
bonjour,

Voila dans ma base j'ai 3 périodes différentes dans base_info

Je souhaiterais faire un tableau par période

A chaque fois c'est le meme tableau juste les données qui sont différentes

donc moi j'ai fait quelques lignes pour cette construction mais php ne me construit les trois tableaux
maintenant je dois récupérer les données a insérer dans les différents endroit du tableau.

voici le tableau

echo "<center>";

			echo "<table border='0' cellpadding='0' cellspacing='0' width='500'>"; 
			echo "<tbody>";
			echo "<table style='width: 500px; height: 90px;' border='5' cellpadding='2' cellspacing='1'>";
			echo "<tr>"; 
			echo "<td class='table-titre' colspan='13'> Ouverture et Cadence pour la période du $daystart au $dayend</td>"; 
			echo "</tr>";
			//--------------- En tete de colonne ---------------// 

			echo "<tr>"; 
				echo "<td class='table-entete' width='1'>  </td>"; 
				echo "<td class='table-entete' width='1'>$jour[0] </td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[1] </td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[2]</td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[3] </td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[4] </td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[5] </td>";  
			echo "</tr>";
			echo "<tr>";
			echo "<td class='table-ligne1-centre' width='100'> Ouverture </td>";
			foreach($tab_res as $ligne)
			{
			echo '<td class=\'table-ligne1-centre\' width=\'100\'>'.$ligne['OUVERTURE'].'</td>';
			}
			echo "</tr>";
			echo "<tr>"; 
			echo "<td class='table-ligne1-centre' width='100'> Cadence </td>"; 
			foreach($tab_res as $ligne)
			{
			echo '<td class=\'table-ligne1-centre\' width=\'100\'>'.$ligne['CADENCE'].'</td>';
			}
			echo "</tr>";
			echo "<tr>"; 
			echo "<td class='table-ligne1-centre' width='100'> Takt Time </td>"; 
			foreach($tab_res as $ligne)
			{
			$taktime = round($ligne['OUVERTURE']/$ligne['CADENCE'], 2);
			list($mm, $ss)=explode(".",$taktime);
		
			$ss = $taktime - $mm;
		
			$hhtaktime = "00";
			$sstaktime = $ss*0.6;
			$total = $mm+$sstaktime;
			$total = round($total, 2);
			list($mm, $ss)=explode(".",$total);
			$total = $hhtaktime.":0".$mm.":".$ss;
			echo "<td class='table-ligne1-centre' width='100'>$taktime ($total)</td>";
			}
			
			echo "</tr>";
			
			echo '</table>';
			echo "</center>";
			echo "</div>"; 



 $sql1 = "	SELECT JOUR.JOUR, JOUR.CADENCE, JOUR.OUVERTURE
					FROM JOUR, BASE_INFO
					WHERE JOUR.DATE_DEBUT=BASE_INFO.DATE_DEBUT";

		$req1 = odbc_exec($conn,$sql1) or die('Erreur SQL : <br />'.$sql1);
		
		while (odbc_fetch_row($req1)) 
			{ 
			$tab_res[odbc_result($req1,"JOUR")]['OUVERTURE']=odbc_result($req1,"OUVERTURE"); 
			$tab_res[odbc_result($req1,"JOUR")]['CADENCE']=odbc_result($req1,"CADENCE");
			}


ce dernier bout de code me renvoit les donnée mais a chaque tableau construit php me ressort les meme ouverture et cadence donc je voudrais voir si vous auriez vu quelque chose qui est bizarre je pense que ma boucle while est mal placée la dernière mais je ne vois pas ou la mettre.

je vous met le code de la page entière pour que vous voyez si la boucle while est a la bonne place.

 echo "<div style=\"text-align: center;\">";
		
echo "<input name=\"periode\" value=\"Période prévue\" onclick=\"window.open('Periode_prevue.php', 'utilisateur', config='width=600, height=600, resizable=no, toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes');\" type=\"button\">"; 

	echo "&nbsp &nbsp &nbsp";
		
echo "<input name=\"periode\" value=\"Mettre a jour une période\" onclick=\"window.open('Formulaire_maj_periode.php', 'utilisateur', config='width=600, height=600, resizable=no, toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no');\" type=\"button\">";

	echo "<br><br>";

$sql = "SELECT DATE_DEBUT, DATE_FIN FROM BASE_INFO";
		
$req = odbc_exec($conn,$sql) or die('Erreur SQL : <br />'.$sql); 
	
	//--------------- Tableau des informations ouverture et cadence de la période actuelle ---------------// 
		while (odbc_fetch_row($req)) 
		{ 
			$datedeb=odbc_result($req,"DATE_DEBUT"); 
			$datefin=odbc_result($req,"DATE_FIN");
			
		
			list($daystart, $hh)=explode(" ",$datedeb);
			list($dayend, $hh)=explode(" ",$datefin);
		
			list($year, $month, $day)=explode("-",$daystart);
			list($yearfin, $monthfin, $dayfin)=explode("-",$dayend);
		
			$daystart = $day."-".$month."-".$year;
			$dayend = $dayfin."-".$monthfin."-".$yearfin;
		
			echo "<br>"; 
			
	//--------------- Tableau ---------------// 
			
			
		//--------------- En tete de colonne ---------------// 
		
		$jour = array (Lundi, Mardi, Mercredi, Jeudi, Vendredi, Samedi);			
			
			
		//--------------- OUVERTURE ---------------// 
		
		$sql1 = "	SELECT JOUR.JOUR, JOUR.CADENCE, JOUR.OUVERTURE
					FROM JOUR, BASE_INFO
					WHERE JOUR.DATE_DEBUT=BASE_INFO.DATE_DEBUT";

		$req1 = odbc_exec($conn,$sql1) or die('Erreur SQL : <br />'.$sql1);
		
		while (odbc_fetch_row($req1)) 
			{ 
			$tab_res[odbc_result($req1,"JOUR")]['OUVERTURE']=odbc_result($req1,"OUVERTURE"); 
			$tab_res[odbc_result($req1,"JOUR")]['CADENCE']=odbc_result($req1,"CADENCE");
			}

								
//--------------- Tableau des informations ouverture et cadence de la période actuelle ---------------//
			echo "<center>";

			echo "<table border='0' cellpadding='0' cellspacing='0' width='500'>"; 
			echo "<tbody>";
			echo "<table style='width: 500px; height: 90px;' border='5' cellpadding='2' cellspacing='1'>";
			echo "<tr>"; 
			echo "<td class='table-titre' colspan='13'> Ouverture et Cadence pour la période du $daystart au $dayend</td>"; 
			echo "</tr>";
			//--------------- En tete de colonne ---------------// 

			echo "<tr>"; 
				echo "<td class='table-entete' width='1'>  </td>"; 
				echo "<td class='table-entete' width='1'>$jour[0] </td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[1] </td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[2]</td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[3] </td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[4] </td>"; 
				echo "<td class='table-entete-centre' width='20'>$jour[5] </td>";  
			echo "</tr>";
			echo "<tr>";
			echo "<td class='table-ligne1-centre' width='100'> Ouverture </td>";
			foreach($tab_res as $ligne)
			{
			echo '<td class=\'table-ligne1-centre\' width=\'100\'>'.$ligne['OUVERTURE'].'</td>';
			}
			echo "</tr>";
			echo "<tr>"; 
			echo "<td class='table-ligne1-centre' width='100'> Cadence </td>"; 
			foreach($tab_res as $ligne)
			{
			echo '<td class=\'table-ligne1-centre\' width=\'100\'>'.$ligne['CADENCE'].'</td>';
			}
			echo "</tr>";
			echo "<tr>"; 
			echo "<td class='table-ligne1-centre' width='100'> Takt Time </td>"; 
			foreach($tab_res as $ligne)
			{
			$taktime = round($ligne['OUVERTURE']/$ligne['CADENCE'], 2);
			list($mm, $ss)=explode(".",$taktime);
		
			$ss = $taktime - $mm;
		
			$hhtaktime = "00";
			$sstaktime = $ss*0.6;
			$total = $mm+$sstaktime;
			$total = round($total, 2);
			list($mm, $ss)=explode(".",$total);
			$total = $hhtaktime.":0".$mm.":".$ss;
			echo "<td class='table-ligne1-centre' width='100'>$taktime ($total)</td>";
			}
			
			echo "</tr>";
			
			echo '</table>';
			echo "</center>";
			echo "</div>"; 	
			
		}
		//--------------- Fin du tableau ---------------// 
		
echo "<br><br><br>";


voila si quelqu'un de charitable voudrait m'aider svp

merci d'avance
A voir également:

3 réponses

drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
23 févr. 2009 à 16:57
up
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
23 févr. 2009 à 17:49
voici une image vous verrez ce sera certainement plus explicite comme ca

http://www.imagefreehost.com/files/2...2443931363.bmp
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
24 févr. 2009 à 08:12
up
0