Hab i-wie ein Problem, die Termine die in der DB stehen, als Termine im Kalender zu markieren.
Gebe ich dem Kalender manuell einen Stamp, geht das alles soweit.
Ich denke ich hab da einfach nen riesen Denkfehler...
Hier die Kalender:
Hier die Funktion Convert2Date:
Un die Funktion GetMySQLData:
Vllt findet einer von euch den Fehler.
Vllt gibts auch etwas was ich verkürzen kann oder besser machen kann.
Wäre echt nett
Gebe ich dem Kalender manuell einen Stamp, geht das alles soweit.
Ich denke ich hab da einfach nen riesen Denkfehler...
Hier die Kalender:
PHP:
<?php
$date = getdate();
$currentmonth = $date[mon];
$year = $date[year];
?>
<table width="100%" border="0" class="calendar">
<tr>
<th colspan="7"><?php echo $months[$currentmonth]. " " . $year; ?></th>
</tr>
<tr>
<th>Mo</th>
<th>Di</th>
<th>Mi</th>
<th>Do</th>
<th>Fr</th>
<th>Sa</th>
<th>So</th>
</tr>
<tr>
<?php
$datum = Convert2Date(time());
$result = GetMySQLData("SELECT * FROM Appointment WHERE Oeffentlich = true");
$today = $datum[0];
$firstofmonth = mktime(0, 0, 0, date("m"), 1, date("Y"));
$offset = (date('w', $firstofmonth) -1) % 7;
$dayspermonth = date("t");
$appointment = Convert2Date("1210261832");
for($i = 0; $i < $offset; $i++)
echo '<td></td>';
for($i=1; $i <= $dayspermonth; $i++)
{
if(mysql_num_rows($result)) { // gucken ob was im Query drinsteckt
while($row = mysql_fetch_assoc($result)) {
$Appointment = Convert2Date($row['Datum']);
if($i == $Appointment[0]){
if($i % 7 == 7 - $offset){
echo '<td class="appointmentonsunday">'.$i.'</td>';}
else{
echo '<td class="appointment"> </td>';
}
}
}
}
if($i == $today){
if($i % 7 == 7 - $offset){
echo '<td class="todayissunday">'.$i.'</td>';
}
else{
echo '<td class="today">'.$i.'</td>';
}
}
elseif($i % 7 == 7 - $offset){
echo '<td class="sunday">'.$i.'</td>';
}
else{
echo '<td>'.$i.'</td>';
}
if( (($i + $offset) % 7 == 0) && ($i + 1 <= $dayspermonth)){
echo '</tr><tr>';
}
}
?>
</table>
Hier die Funktion Convert2Date:
PHP:
function Convert2Date($timestamp)
{
$Date = array(date("d",$timestamp),date("m",$timestamp),date("Y",$timestamp));
return $Date;
}
Un die Funktion GetMySQLData:
PHP:
function GetMySQLData($SQLStatement)
{
if($localhost == "true"){
@mysql_connect(localhost, root, " ") OR die("Keine Verbindung zur Datenbank. Fehlermeldung:".mysql_error());}
else{
@mysql_connect(localhost, usr entfernt, pw entfernt) OR die("Keine Verbindung zur Datenbank. Fehlermeldung:".mysql_error());}
mysql_select_db(db entfernt) OR die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());
$result = mysql_query($SQLStatement) OR die(mysql_error());
return $result;
}
Vllt findet einer von euch den Fehler.
Vllt gibts auch etwas was ich verkürzen kann oder besser machen kann.
Wäre echt nett