3 champ, jour, mois, annes, ranger php/mysql

anthony2009 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
Bonjour à tous,
J'ai un petit probleme, je vien de faire 3 champs pour un affichage par date

jour = INT mysql
mois= INT mysql
annes = INT mysql


pouvez-vous m'aider à les trier svp, voici mon code php
<?php




$total=0;
$parpage=5;
if(isset($_GET['page']))
$page=$_GET['page'];
else
$page=0;

if(isset($_GET[catpodcasts])){

$cat=$_GET[catpodcasts]; //LORSQU IL A UNE CATEGORIE
$commaff= mysql_query("SELECT * FROM ".T_PODCAST." WHERE idcat='$cat' ORDER BY id DESC LIMIT $page,$parpage ");
$totalid=mysql_query("SELECT * from ".T_PODCAST." WHERE idcat='$cat'");

}else{
$commaff= mysql_query("SELECT * FROM ".T_PODCAST." ORDER BY annes, mois, jour LIMIT $page,$parpage");
$totalid=mysql_query("SELECT * from ".T_PODCAST."");

}
while ($donnees = mysql_fetch_array($totalid))
{
$total++;
}


$repon = mysql_num_rows($commaff);
if(!$repon) {
echo'<div align="center">Aucun podcast dans cette catégorie</div>';
}




while ($donnees = mysql_fetch_array($commaff))
{
$max=200;
$chaine=$donnees['description'];
if(strlen($chaine)>=$max)
{
$chaine=substr($chaine,0,$max);
$espace=strrpos($chaine," ");
if($espace)
$chaine=substr($chaine,0,$espace);
$chaine .= ' ...';
}
$numero=$donnees[0]+102;
echo'<table id="Tableau_01" width="719" height="126" border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
<img src="images/podcastsaudioradio_01.png" width="719" height="12" alt=""></td>
</tr>
<tr>
<td valign="top"><table width="719" height="102" border="0" cellpadding="0" cellspacing="0">
<tr>
<td background="images/podcastsaudioradio_02.png"><div align="center">
<table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="14%" valign="top"><table width="70" height="70" border="0" cellpadding="5" cellspacing="0">
<tr>
<td valign="middle" ><div ><span ><img src="podcast/images/'.$donnees['image'].'" width="80" height="80" border="0" class="glossy iradius""></span></div></td>
</tr>
</table></td>
<td width="59%" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="5">
<tr>
<td><div align="justify">
<div align="justify" ><strong>'.stripslashes ($donnees['titre']).'</strong> - <strong>'.$donnees['jour'].' ';

switch($donnees['mois'])
{
case 1:
echo "Janvier"; break;
case 2:
echo "Fevrier"; break;
case 3:
echo "Mars"; break;
case 4:
echo "Avril";break;
case 5:
echo "Mai";break;
case 6:
echo "Juin";break;
case 7:
echo "Juillet";break;
case 8:
echo "Aout";break;
case 9:
echo "Septembre";break;
case 10:
echo "Octobre";break;
case 11:
echo "Novembre";break;
case 12:
echo "Decembre";break;
}


echo' '.$donnees['annee'].'</strong></div>
'.stripslashes ($chaine).' <strong><a href="biographie.php?numero='.$numero.'"><br/>
</a></strong><a href="biographie.php?numero='.$numero.'"></a></div></td>
</tr>
</table></td>
<td width="27%" valign="middle"><div align="right">


<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="150" height="50"
codebase="http://fpdownload2.macromedia.com/get/shockwave/cabs/flash/swflash.cab">
<param name="movie" value="mp3-player/singlemp3player.swf?file=podcast/audio/'.$donnees['mp3'].'&autoStart=false&backColor=ffffff&frontColor=700b21&songVolume=100" />
<param name="wmode" value="transparent" />
<embed wmode="transparent" width="150" height="50" src="mp3-player/singlemp3player.swf?file=podcast/audio/'.$donnees['mp3'].'&autoStart=false&backColor=ffffff&frontColor=700b21&songVolume=100"
type="application/x-shockwave-flash" pluginspage="https://get.adobe.com/flashplayer/" />
</object>





</div></td>
</tr>
</table>
</div></td>
</tr>
</table></td>
</tr>
<tr>
<td>
<img src="images/podcastsaudioradio_03.png" width="719" height="12" alt=""></td>
</tr>
</table><br />




';
}
?>
A voir également:

4 réponses

Alain42
 
Salut,

pourquoi ne pas mettre la date dans un seul champ

date au format date mysql (yyyy-mm-dd) ?

est ce que cela te simplifierait la vie ?

Sinon tu as des erreurs de code dans tes echo

tu as en début et fin de chaine ' et plein de ' à l'intérieur de ta chaine, mon éditeur php (notepad++) n'est pas content

alors échapes tes ' par de \' à l'int"érieur de ta chaine des echo
0
anthony2009 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai essayer de mettre en (yyyy-mm-dd), personne ne m'a répondu dans le forum pour mettre ceci en Francais,

Ca fait plusieurs semaines que je suis en galere, donc, la meilleurs solution du moment, c'est ca,

Eventuellement, si tu a une solution pour inverser le (yyyy-mm-dd) en dd/mm/yyyy, ca serais vraiment super car tu m'enleverais une grosse épine du pied.

Merci en tout cas pour ta réponse.

Antho
0
Alain42
 
Bonsoir,

pour mettre en français une date au format mysql:

function date_mysql_fr($date_mysql){
$array_date=explode("-",$date_mysql);
$date_fr=$array_date[2]."/".$array_date[1]."/".$array_date[0];
return=$date_fr;
}

tu appelles cette fonction par:

$date=date_mysql_fr(date_lue_dans_la_base);

et ça te retourne au format 01/11/2007

par contre si tu veux avoir les jours de la semaine et les noms de mois en français, il me semble que sur ce forum il y a la réponse
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

il faut regarder tes messages et eviter de poster en double, regarde ici datetime en francais php mysql#5
tu peux le faire directement dans MySql
0