• User Newbie

    Gestione giorni linkabili di un calendario mensile

    salve a tutti...
    ho trovato il seguente codice e lo sto adattando alle mie esigenze
    [PHP]<?
    function ShowCalendar($m,$y)
    {
    if ((!isset($_GET['d']))||($_GET['d'] == ""))
    {
    $m = date('n');
    $y = date('Y');
    }else{
    $m = (int)strftime( "%m" ,(int)$_GET['d']);
    $y = (int)strftime( "%Y" ,(int)$_GET['d']);
    $m = $m;
    $y = $y;
    }
    $precedente = mktime(0, 0, 0, $m -1, 1, $y);
    $successivo = mktime(0, 0, 0, $m +1, 1, $y);
    $nomi_mesi = array(
    "Gen",
    "Feb",
    "Mar",
    "Apr",
    "Mag",
    "Giu",
    "Lug",
    "Ago",
    "Set",
    "Ott",
    "Nov",
    "Dic"
    );
    $nomi_giorni = array(
    "Lun",
    "Mar",
    "Mer",
    "Gio",
    "Ven",
    "Sab",
    "Dom"
    );
    $cols = 7;
    $days = date("t",mktime(0, 0, 0, $m, 1, $y));
    $lunedi= date("w",mktime(0, 0, 0, $m, 1, $y));
    if($lunedi==0) $lunedi = 7;
    echo "<table>\n";
    echo "<tr>\n
    <td colspan="".$cols."">
    <a href="?d=" . $precedente . ""><<</a>
    " . $nomi_mesi[$m-1] . " " . $y . "
    </td></tr>";
    echo "<tr class="cont1" style="text-align:center">";
    foreach($nomi_giorni as $v)
    {
    echo "<td><b>".$v."</b></td>\n";
    }
    echo "</tr><tr>";
    for($j = 1; $j<$days+$lunedi; $j++)
    {
    if($j%$cols+1==0)
    {
    echo "</tr><tr>\n";
    }
    if($j<$lunedi)
    {
    echo "<td> </td>\n";
    }else{
    $day= $j-($lunedi-1);

      $data = strtotime(date($y."-".$m."-".$day));
      $oggi = strtotime(date("Y-m-d"));
      $sql = "SELECT *, DATE_FORMAT(datetime,'%Y-%m-%d') as datatime FROM articoli";
      $result = mysql_query($sql) or die (mysql_error());
      if(mysql_num_rows($result) > 0){
        while($fetch = mysql_fetch_array($result)){
         $str_data = $fetch['datatime'];
          $str_data= strtotime($str_data);
         $titolo=$fetch['titolo'];
          $id=$fetch['id'];
                    if($str_data == $data){
    
           
               $day= "<a href=\"$path/ricerca.php?search=$str_data\" title=\"".ucfirst($titolo)."\" >$day</a> ";    
            }
        }
      }
      if($data != $oggi)
      {
        echo "<td>".$day."</td>";
      }else{
        echo "<td><b>".$day."</b></td>";
      }
    }
    if($j%$cols==0)
    {
      echo "</tr><tr>";
    }
    

    }
    echo "</tr>";
    echo "</table>";

    }

    [/PHP]
    si tratta di un calendario mensile con giorni cliccabili per poter interrogare poi il motore di ricerca riguardo gli articoli del giorno...
    Vorrei che l'attributo title del giorno linkato mostri i titoli degli articoli del giorno separati da virgola. attualmente mostra solo l'ultimo articolo postato del giorno e ignora quello precedente.
    qualche idea su come fare. ci ho provato tante volte ma non ci sono riuscito