Bonjour à tous !
J ai tenté de trouver une solution avant de venir poster mais en vain.
Actuellement j affiche mon programme de manière simple :

<?php
            $sql="SELECT *FROM v_programme WHERE online = 1 ORDER BY heure, id ASC";
            $req = mysql_query($sql) or die ('Erreur SQL !! <br />'.$sql. '<br />'.mysql_error());
            while($data=mysql_fetch_assoc($req)){
    ?>
  <tr>
    <td> </td>
    <td align="center" bgcolor="#CCCCCC"><?php echo date("H:i" ,strtotime ($data"heure"])); ?> </td>
    <td align="center" bgcolor="#CCCCCC"><img src="/img/prog/<?php echo $data"images"]; ?>.png" alt="" width="18" height="18"></td>
    <td align="center" bgcolor="#CCCCCC"><?php echo $data"Type"]; ?></td>
    <td align="center" bgcolor="#CCCCCC"><strong><?php echo $data"titre"]; ?></strong></td>
    <td align="center" bgcolor="#CCCCCC"><a href="/player/stream<?php echo $data"Nom_chaine"]; ?>.php" class="classname" data-icon="l">Goalhd Tv <?php echo $data"Nom_chaine"]; ?></a></td>
    <td> </td>
  </tr>
  <?php }?>

Seulement je suis très vite ennuyé car si je veut faire le programme à l'avance, tout mes Event se mettent les uns a la suite des autres.
Or ce que je souhaite c'est structuré le tout :

Lundi 1er Janvier : Event1, Event2,
Mardi 2 Janvier : Event 3 ...

Je souhaite donc au moins une orientation vers le sujet que je doit travailler pour reussir ceci.
C est mon premier post j’espère être clair dans ma demande.
Merci bcp.

1 réponse


Salut

Pour ta requête j'imagine un truc de ce genre
On prend les jours de la semaine et le reste des champs et on classe par date

SELECT DAYOFWEEK(date_programme) AS jours_semaine, heure_programme, content_programme, date_programme
FROM table_programme
ORDER BY date_programme DESC;

Ensuite le principe est de remplir un tableau multidimensionnel genre:

mon_calendrier'02-02-2013']'samedi']'13h30'] -> 'Faire du yoga'];
mon_calendrier'02-02-2013']'samedi']'14h30'] -> 'Séances de gym'];
mon_calendrier'02-02-2013']'samedi']'15h20'] -> 'Séance de natation'];
mon_calendrier'02-02-2013']'samedi']'16h40'] -> 'Dormir'];
mon_calendrier'03-02-2013']'dimanche']'10h30'] -> 'petit dej'];
mon_calendrier'03-02-2013']'dimanche']'13h30'] -> 'Aller au resto avec machin'];
mon_calendrier'03-02-2013']'dimanche']'15h30'] -> 'Dormir'];
mon_calendrier'04-02-2013']'lundi']'09h30'] -> 'Vérifier ces ^poches'];

$mon_calendrier = array();
$date=null;
$jours=null;
while ($row = $db_result->fetch() ) { 
    if ($row'date_programme']<>$date){
        $date=jours_semaine;        
    }
    if($row'jours_semaine']<>jours){
        $jours=row'jours_semaine'];
    }
    $mon_calendrier$date]$jours]$row'heure_programme']]=$row'content_programme'];
}

ca te fera un tableau multidimensionnel ou tes programmes sont classé par date et jours de la semaine

genre quand tu va naviguer à l'intérieur

si tu veux les événement d'un jour concret tu fait

$date_voulue=$_GET'date'];
$mesprogrammes=$mon_calendrier$date_voulue];
 if($mesprogrammes==null) echo "pas de programme pour le: ".$date_voulues;
 else
 foreach ($mesprogrammes as $k => $v){
    echo "programme du: ".$k; // affiche programme du NOM_DU_JOURS
    foreach ($v as $h => $p){
        echo "horaire :".$h;
        echo "programme: ".$p;
    }
 }

Voila c'est juste pour le code, vu que j'ai fait ca sans tester, il se pourrait qu'il manque une petite virgule ou parenthèse

:)