Problème dans mon taleau php+while

Fermé
drogba7213 Messages postés 1521 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 - 11 févr. 2009 à 08:57
drogba7213 Messages postés 1521 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 - 11 févr. 2009 à 15:56
Bonjour,

voila je n'arrive pas a préseter correctement mon tabelau il devrait se présenter de la manière suivante :

il y a une ligne avec la période correspondante puis ensuite une ligne avec les jours puis une ligne ouverture, cadence, et taktime.
puis il devrait recommencer car il devrait présenter deux tableau comme celui ci puisque j'ai deux tuuples dans ma base.

Je sais que sans visu pour faire ces choses la c'est difficile mais je suis en local et j'ai aucun moyen a part de mettre le code.

Pourriez vous m'aider svp

merci d'avance

<html>

<!##########################################################################################################################>

<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">

<title>Modifier un arrêt chaîne</title>

<link rel="stylesheet" media="screen" type="text/css" title="identification" href="Application.css">

</head>

<!##########################################################################################################################>
<body>
<!------------------ Bannière ------------------>

<div id="ban3"> </div>
<br>

<?php

//--------------- Connexion à la base ---------------//

require('Connexion.php');

$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>";

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 ---------------//
$jour = array (Lundi, Mardi, Mercredi, Jeudi, Vendredi, Samedi);


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>";

//--------------- OUVERTURE ---------------//

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

$req = odbc_exec($conn,$sql1) or die('Erreur SQL : <br />'.$sql1);

while (odbc_fetch_row($req))
{
$tab_res[odbc_result($req,"JOUR")]['OUVERTURE']=odbc_result($req,"OUVERTURE");
$tab_res[odbc_result($req,"JOUR")]['CADENCE']=odbc_result($req,"CADENCE");
}
$Ouv_lundi = ($tab_res[LUNDI][OUVERTURE]);
$Ouv_mardi = ($tab_res[MARDI][OUVERTURE]);
$Ouv_mercredi = ($tab_res[MERCREDI][OUVERTURE]);
$Ouv_jeudi = ($tab_res[JEUDI][OUVERTURE]);
$Ouv_vendredi = ($tab_res[VENDREDI][OUVERTURE]);
$Ouv_samedi = ($tab_res[SAMEDI][OUVERTURE]);

$Cad_lundi = ($tab_res[LUNDI][CADENCE]);
$Cad_mardi = ($tab_res[MARDI][CADENCE]);
$Cad_mercredi = ($tab_res[MERCREDI][CADENCE]);
$Cad_jeudi = ($tab_res[JEUDI][CADENCE]);
$Cad_vendredi = ($tab_res[VENDREDI][CADENCE]);
$Cad_samedi = ($tab_res[SAMEDI][CADENCE]);

$Tak_lundi = round($Ouv_lundi/$Cad_lundi, 2);
$Tak_mardi = round($Ouv_mardi/$Cad_mardi, 2);
$Tak_mercredi = round($Ouv_mercredi/$Cad_mercredi, 2);
$Tak_jeudi = round($Ouv_jeudi/$Cad_jeudi, 2);
$Tak_vendredi = round($Ouv_vendredi/$Cad_vendredi, 2);
$Tak_samedi = round($Ouv_samedi/$Cad_samedi, 2);




echo "<tr>";
echo "<td class='table-ligne1-centre' width='100'> Ouverture </td>";
echo "<td class='table-ligne1-centre' width='100'> $Ouv_lundi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Ouv_mardi </td>";
echo "<td class='table-ligne1-centre' width='2'> $Ouv_mercredi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Ouv_jeudi</td>";
echo "<td class='table-ligne1-centre' width='100'> $Ouv_vendredi</td>";
echo "<td class='table-ligne1-centre' width='2'> $Ouv_samedi</td>";
echo "</tr>";

//--------------- CADENCE ---------------//

echo "<tr>";
echo "<td class='table-ligne1-centre' width='100'> Cadence </td>";
echo "<td class='table-ligne1-centre' width='100'> $Cad_lundi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Cad_mardi</td>";
echo "<td class='table-ligne1-centre' width='2'> $Cad_mercredi</td>";
echo "<td class='table-ligne1-centre' width='100'> $Cad_jeudi</td>";
echo "<td class='table-ligne1-centre' width='100'> $Cad_vendredi </td>";
echo "<td class='table-ligne1-centre' width='2'> $Cad_samedi</td>";
echo "</tr>";

//--------------- TAKTIME ---------------//

echo "<tr>";
echo "<td class='table-ligne1-centre' width='100'> Taktime </td>";
echo "<td class='table-ligne1-centre' width='100'> $Tak_lundi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Tak_mardi </td>";
echo "<td class='table-ligne1-centre' width='2'> $Tak_mercredi</td>";
echo "<td class='table-ligne1-centre' width='100'> $Tak_jeudi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Tak_vendredi</td>";
echo "<td class='table-ligne1-centre' width='2'> $Tak_samedi</td>";
echo "</tr>";

echo "</tbody>";

echo "</table>";
echo "</div>";

}

echo "<br><br><br>";

?>
<div style="text-align: center;">

<input value="Valider" onclick="self.close()" name="button" type="submit">

</div>

</div>
</body>
</html>
A voir également:

6 réponses

974_Vin's_974 Messages postés 547 Date d'inscription vendredi 23 janvier 2009 Statut Membre Dernière intervention 19 février 2009 102
11 févr. 2009 à 11:24
Tu fais quelque chose de très compliké, pour vouloir faire kelke chose de très simple, en gros ce que tu veux c'est un tableau avec 5 colone, et puis tu veux que toutes les lignes s'affichent, grace à la boucle que tu fais ???

C'est bien ca ??

0
drogba7213 Messages postés 1521 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
11 févr. 2009 à 11:31
oui
0
974_Vin's_974 Messages postés 547 Date d'inscription vendredi 23 janvier 2009 Statut Membre Dernière intervention 19 février 2009 102
11 févr. 2009 à 11:46
Ben déja tu devré organiser tout ca dans un tableau

<table border="0">
<tr>
<th>1ere colone</th>
<th>2eme colone</th>
<th>3eme colone</th>
<th>4eme colone</th>
<th>5eme colone</th>
</tr>
<tr>
<td>


Et ici tu fais la boucle, et tu fais un echo a chak foi, tu comprends ???

</td>
.....

</table>
0
drogba7213 Messages postés 1521 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
11 févr. 2009 à 11:57
alors en faite je sai pas si ta bien compris

1ere requete
je fais un select qui retourne deux tuples

Je veut dans un premier temps que ces deux tuples construise le tableau donc c'est ce que je fais

$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>";

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 ---------------//
$jour = array (Lundi, Mardi, Mercredi, Jeudi, Vendredi, Samedi);


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>";

//--------------- OUVERTURE ---------------//

echo "<tr>";
echo "<td class='table-ligne1-centre' width='100'> Ouverture </td>";
echo "<td class='table-ligne1-centre' width='100'> $Ouv_lundi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Ouv_mardi </td>";
echo "<td class='table-ligne1-centre' width='2'> $Ouv_mercredi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Ouv_jeudi</td>";
echo "<td class='table-ligne1-centre' width='100'> $Ouv_vendredi</td>";
echo "<td class='table-ligne1-centre' width='2'> $Ouv_samedi</td>";
echo "</tr>";

//--------------- CADENCE ---------------//

echo "<tr>";
echo "<td class='table-ligne1-centre' width='100'> Cadence </td>";
echo "<td class='table-ligne1-centre' width='100'> $Cad_lundi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Cad_mardi</td>";
echo "<td class='table-ligne1-centre' width='2'> $Cad_mercredi</td>";
echo "<td class='table-ligne1-centre' width='100'> $Cad_jeudi</td>";
echo "<td class='table-ligne1-centre' width='100'> $Cad_vendredi </td>";
echo "<td class='table-ligne1-centre' width='2'> $Cad_samedi</td>";
echo "</tr>";

//--------------- TAKTIME ---------------//

echo "<tr>";
echo "<td class='table-ligne1-centre' width='100'> Taktime </td>";
echo "<td class='table-ligne1-centre' width='100'> $Tak_lundi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Tak_mardi </td>";
echo "<td class='table-ligne1-centre' width='2'> $Tak_mercredi</td>";
echo "<td class='table-ligne1-centre' width='100'> $Tak_jeudi </td>";
echo "<td class='table-ligne1-centre' width='100'> $Tak_vendredi</td>";
echo "<td class='table-ligne1-centre' width='2'> $Tak_samedi</td>";
echo "</tr>";


Voila donc ca me construit deux tableau

la ou je bloque c'est pour remplir ces deux tableaux...

d'ou ma deuxième requete

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

$req = odbc_exec($conn,$sql1) or die('Erreur SQL : <br />'.$sql1);

while (odbc_fetch_row($req))
{
$tab_res[odbc_result($req,"JOUR")]['OUVERTURE']=odbc_result($req,"OUVERTURE");
$tab_res[odbc_result($req,"JOUR")]['CADENCE']=odbc_result($req,"CADENCE");
}
$Ouv_lundi = ($tab_res[LUNDI][OUVERTURE]);
$Ouv_mardi = ($tab_res[MARDI][OUVERTURE]);
$Ouv_mercredi = ($tab_res[MERCREDI][OUVERTURE]);
$Ouv_jeudi = ($tab_res[JEUDI][OUVERTURE]);
$Ouv_vendredi = ($tab_res[VENDREDI][OUVERTURE]);
$Ouv_samedi = ($tab_res[SAMEDI][OUVERTURE]);

$Cad_lundi = ($tab_res[LUNDI][CADENCE]);
$Cad_mardi = ($tab_res[MARDI][CADENCE]);
$Cad_mercredi = ($tab_res[MERCREDI][CADENCE]);
$Cad_jeudi = ($tab_res[JEUDI][CADENCE]);
$Cad_vendredi = ($tab_res[VENDREDI][CADENCE]);
$Cad_samedi = ($tab_res[SAMEDI][CADENCE]);

$Tak_lundi = round($Ouv_lundi/$Cad_lundi, 2);
$Tak_mardi = round($Ouv_mardi/$Cad_mardi, 2);
$Tak_mercredi = round($Ouv_mercredi/$Cad_mercredi, 2);
$Tak_jeudi = round($Ouv_jeudi/$Cad_jeudi, 2);
$Tak_vendredi = round($Ouv_vendredi/$Cad_vendredi, 2);
$Tak_samedi = round($Ouv_samedi/$Cad_samedi, 2);

et je n'arrive pas a retrouver les informations pour le bon tableau

comprend tu mieux?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
974_Vin's_974 Messages postés 547 Date d'inscription vendredi 23 janvier 2009 Statut Membre Dernière intervention 19 février 2009 102
11 févr. 2009 à 12:00
Dsl mais j'ai vraiment du mal à comprendre ton code ..

:-s
0
drogba7213 Messages postés 1521 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
11 févr. 2009 à 15:56
up
0