ThWboard Support-Forum (Archiv)

Ort: / Boardübersicht / Code Hack Requests / Nächstes Event vom Kalender als Text ausgeben


Seite 1 von 1

redman764 schrieb am 20.07.2003 um 20:34 Uhr

Ich würde gerne das Datum und das nächste Event das im Kalender steht als Text auf der HP ausgeben. Wäre das irgendwie möglich?

Gruß,

redman

Andy schrieb am 21.07.2003 um 04:06 Uhr

function make_date( $date )
{
    return substr( $date, 8, 2 ) . "." . substr( $date, 5, 2 ) . "." . substr( $date, 0, 4 );
}

function count_days($start, $end)
{
   if( $start != '0000.00.00' and $end != '0000.00.00' )
   {
       $timestamp_start = strtotime($start);
       $timestamp_end = strtotime($end);
      if( $timestamp_start >= $timestamp_end ) return 0;
      $start_year = date("Y",$timestamp_start);
       $end_year = date("Y", $timestamp_end);
       $num_days_start = date("z",strtotime($start));
       $num_days_end = date("z", strtotime($end));
       $num_days = 0;
      $i = 0;
       if( $end_year > $start_year )
       {
         while( $i < ( $end_year - $start_year ) )
          {
            $num_days = $num_days + date("z", strtotime(($start_year + $i).".12.31"));
             $i++;
          }
       }
        return ( $num_days_end + $num_days ) - $num_days_start;
   }
   else
   {
        return 0;
   }
}

    $currentday = date("d", time());
    $currentmonth = date("m", time());
    $currentyear = date("Y", time());
    
    $r_calendar = mysql_query("SELECT * FROM " . $pref . "calendar WHERE eventtime >= '$currentyear-$currentmonth-$currentday' ORDER BY eventtime LIMIT 1");
    if( mysql_num_rows( $r_calendar ) > 0 )
    {
        $calendar = mysql_fetch_array( $r_calendar );
        if( $currentday.".".$currentmonth.".".$currentyear == make_date( $calendar['eventtime'] ) )
        {
            $eventime = '<b><font color="red">Heute:</font></b>';
        }
        else
        {

            $eventime = 'Am '.make_date( $calendar['eventtime'] ).' in <i><b>'.count_days(date("Y-m-d"),$calendar['eventtime']).' Tag/en</b></i>:';
        }
        $events .= "<a href=\"#\" onclick=\"window.open('showevent.php?event=$calendar[eventid]','show_event','width=400,height=500,scrollbars=yes,menubar=no,toolbar=no,statusbar=no')\">$calendar[eventsubject]</A>&nbsp;&nbsp;&nbsp;";
    }

So, das ist ein Codesnippet aus meinem Clanboard, alles was du brauchst um es in betrieb zu setzen ist eine Gültige verbindung zur Datenbank wo auch das ThWboard drauf ist, das ergebnis sitzt dann in $events.
Die count_days Funktion ist ziehmlich doof, weil man genau das gleiche viel leichter mit Timestamps lösen kann, ich hab sie aus einem php.net Beitrag einfach rausgeschnipselt, weil ich zu faul war sie selber zu coden.

Seite 1 von 1