le 13/12/2003 à 20:37
allserv
Bonsoir,
Voilà j'explique mon problème, j'ai une table $table_ensembles dans lequel j'ai un champ date et un champ date_fin. Je récupère en fait l'écart entre les deux dates. Et je stocke tout ca dans un tableau. Ensuite je fais un rangement via la fonction array_multisort() de tous les tableaux suivants le tableau ecart par ordre croissant :
<?
$tab_ensembles_id = array();
$tab_ensembles_ecart = array();
$tab_ensembles_nom = array();
$i=1;
// Recuperation du prono
$sql = "SELECT * FROM ".$table_ensembles." WHERE clos=0 AND remise_zero=0";
$query = mysql_query($sql) or die("Erreur sur $sql :<br><br>".mysql_error());
while($data = mysql_fetch_array($query)){
$sql_two = "SELECT id,nom,ABS(TO_DAYS('".$data["date"]."') - TO_DAYS('".date("Y-m-d H:i:s")."')) AS ecart FROM ".$table_ensembles." WHERE id='".$data["id"]."'";
$query_two = mysql_query($sql_two) or die("Erreur sur $sql_two :<br><br>".mysql_error());
$data_two = mysql_fetch_array($query_two);
$tab_ensembles_id[$i] = $data_two["id"];
$tab_ensembles_ecart[$i] = $data_two["ecart"];
$tab_ensembles_nom[$i] = stripslashes($data_two["nom"]);
$i++;
}
array_multisort( $tab_ensembles_ecart,SORT_ASC,$tab_ensembles_id, $tab_ensembles_nom);
for($i=1;$i<=3;$i++){
?>
<tr>
<td><img src="../images/flechedb.gif"> <a href="view.php?action=prono&<? echo session_name(); ?>=<? echo session_id(); ?>"><font size="2">
<?=stripslashes($tab_ensembles_nom[$i]);?></font></a></td>
</tr>
<?
}
?>
Malheureusement lorsque j'ai deux enregistrements rien ne s'affiche, alors que quand j'en ai un ca s'affiche.
Lorsque je supprime le array_multisort(), les enresgitrements s'affichent correctement mais bon il n'y a pas de rangement de fait.
D'où pourrait venir l'erreur ?
Merci d'avance
Voilà j'explique mon problème, j'ai une table $table_ensembles dans lequel j'ai un champ date et un champ date_fin. Je récupère en fait l'écart entre les deux dates. Et je stocke tout ca dans un tableau. Ensuite je fais un rangement via la fonction array_multisort() de tous les tableaux suivants le tableau ecart par ordre croissant :
<?
$tab_ensembles_id = array();
$tab_ensembles_ecart = array();
$tab_ensembles_nom = array();
$i=1;
// Recuperation du prono
$sql = "SELECT * FROM ".$table_ensembles." WHERE clos=0 AND remise_zero=0";
$query = mysql_query($sql) or die("Erreur sur $sql :<br><br>".mysql_error());
while($data = mysql_fetch_array($query)){
$sql_two = "SELECT id,nom,ABS(TO_DAYS('".$data["date"]."') - TO_DAYS('".date("Y-m-d H:i:s")."')) AS ecart FROM ".$table_ensembles." WHERE id='".$data["id"]."'";
$query_two = mysql_query($sql_two) or die("Erreur sur $sql_two :<br><br>".mysql_error());
$data_two = mysql_fetch_array($query_two);
$tab_ensembles_id[$i] = $data_two["id"];
$tab_ensembles_ecart[$i] = $data_two["ecart"];
$tab_ensembles_nom[$i] = stripslashes($data_two["nom"]);
$i++;
}
array_multisort( $tab_ensembles_ecart,SORT_ASC,$tab_ensembles_id, $tab_ensembles_nom);
for($i=1;$i<=3;$i++){
?>
<tr>
<td><img src="../images/flechedb.gif"> <a href="view.php?action=prono&<? echo session_name(); ?>=<? echo session_id(); ?>"><font size="2">
<?=stripslashes($tab_ensembles_nom[$i]);?></font></a></td>
</tr>
<?
}
?>
Malheureusement lorsque j'ai deux enregistrements rien ne s'affiche, alors que quand j'en ai un ca s'affiche.
Lorsque je supprime le array_multisort(), les enresgitrements s'affichent correctement mais bon il n'y a pas de rangement de fait.
D'où pourrait venir l'erreur ?
Merci d'avance