Maetzzen: Termine/Events in php-Kalender einbinden

Huhu, hätte mal wieder eine Frage bzw. wäre toll von euch Hilfe zu bekommen.

Ich habe mit Hilfe von diesem Tutorial einen einfachen php-Kalender erstellt. Dieser nimmt das aktuelle Timestamp und kann dann alle Daten der Unix-Zeit angeben, mehr aber nicht.

Ich würde gerne Termine aus meiner Datenbank mit dem Kalender verbinden, sodass diese entweder in den einzelnen Kästchen stehen oder z.B. per :hover dann eingeblendet werden.

Nun wollte ich erst mal Fragen, ob es überhaupt möglich ist diesem Kalender den einzelnen Tagen einen Wert bzw ein Ereignis zuzuordnen oder ob das vornerein sowieso keinen Sinn macht, da es zu aufwendig ist und ich eher nach etwas anderem schauen soll bzw. mich selbst probieren soll.

<?php

if( isset($_REQUEST['timestamp'])) $date = $_REQUEST['timestamp'];
else $date = time();

$arrMonth = array(
    "January" => "Januar",
    "February" => "Februar",
    "March" => "M&auml;rz",
    "April" => "April",
    "May" => "Mai",
    "June" => "Juni",
    "July" => "Juli",
    "August" => "August",
    "September" => "September",
    "October" => "Oktober",
    "November" => "November",
    "December" => "Dezember"
);
    
$headline = array('Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag','Sonntag');

?>

<div class="calender">
    <div class="pagination">
        <a href="?timestamp=<?php echo yearBack($date); ?>" class="last">|&laquo;</a> 
        <a href="?timestamp=<?php echo monthBack($date); ?>" class="last">&laquo;</a> 
        <div class="pagihead">
           <span><?php echo $arrMonth[date('F',$date)];?> <?php echo date('Y',$date); ?></span>
        </div>
        <a href="?timestamp=<?php echo monthForward($date); ?>" class="next">&raquo;</a>
        <a href="?timestamp=<?php echo yearForward($date); ?>" class="next">&raquo;|</a>  
    </div>
    <?php getCalender($date,$headline); ?>
    <div class="clear"></div>
</div>
    
    <?php
function monthBack( $timestamp ){
    return mktime(0,0,0, date("m",$timestamp)-1,date("d",$timestamp),date("Y",$timestamp) );
}
function yearBack( $timestamp ){
    return mktime(0,0,0, date("m",$timestamp),date("d",$timestamp),date("Y",$timestamp)-1 );
}
function monthForward( $timestamp ){
    return mktime(0,0,0, date("m",$timestamp)+1,date("d",$timestamp),date("Y",$timestamp) );
}
function yearForward( $timestamp ){
    return mktime(0,0,0, date("m",$timestamp),date("d",$timestamp),date("Y",$timestamp)+1 );
}

function getCalender($date,$headline = array('Mo','Di','Mi','Do','Fr','Sa','So')) {
    $sum_days = date('t',$date);
    $LastMonthSum = date('t',mktime(0,0,0,(date('m',$date)-1),0,date('Y',$date)));
    
    foreach( $headline as $key => $value ) {
        echo "<div class=\"day headline\">".$value."</div>\n";
    }
    
    for( $i = 1; $i <= $sum_days; $i++ ) {
        $day_name = date('D',mktime(0,0,0,date('m',$date),$i,date('Y',$date)));
        $day_number = date('w',mktime(0,0,0,date('m',$date),$i,date('Y',$date)));
        
        if( $i == 1) {
            $s = array_search($day_name,array('Mon','Tue','Wed','Thu','Fri','Sat','Sun'));
            for( $b = $s; $b > 0; $b-- ) {
                $x = $LastMonthSum-$b;
                echo "<div class=\"day before\">".sprintf("%02d",$x)."</div>\n";
            }
        } 
        
        if( $i == date('d',$date) && date('m.Y',$date) == date('m.Y')) {
            echo "<div class=\"day current\">".sprintf("%02d",$i)."</div>\n";
        } else {
            echo "<div class=\"day normal\">".sprintf("%02d",$i)."</div>\n";
        }
        
        if( $i == $sum_days) {
            $next_sum = (6 - array_search($day_name,array('Mon','Tue','Wed','Thu','Fri','Sat','Sun')));
            for( $c = 1; $c <=$next_sum; $c++) {
                echo "<div class=\"day after\"> ".sprintf("%02d",$c)." </div>\n"; 
            }
        }
    }
}
    
?>

Natürlich habe ich diesen Kalender größtenteils nur übernommen.

Zu meiner Frage, die ich dem Macher dieses Kalenders persönlich geschrieben habe, meinte dieser:

Ja ist es. Ich würde die termine mit javascript nachladen. Dann geht nicht so viel Performance flöten. Also ein ajax request an ein Script welches dir alle einträge aus der db zieht zu dem ausgewählten monat und diese daten dann in den Kalender importieren

Nur so richtig verstehen tu ich das nicht.

Grüße Maetzzen