Hallo Leute,
ich habe den ganzen Tag nach einem geeigneten Script gesucht, mit dem ich den Öffnungsstatus einer Praxis anzeigen kann. Da habe ich auch etwas gefunden und mit meinen Laienhaften Wissen nach meinen Bedürfnissen bearbeitet. Das Problem jedoch ist, dass es bei den Öffnungszeiten an einigen Tagen eine Mittagspause gibt und in den Fällen lediglich der Nachmittagsstatus angezeigt wird, während vormittags der Status für geschlossen ausgegeben wird, obwohl eigentlich geöffnet ist.
Ich komme hier einfach nicht weiter und hoffe das mir hier jemand helfen kann.
Hier das zusammengebastelte Script.
Vielen Dank schonmal, ich hoffe das ich im richtigen Forum geposted habe.
ich habe den ganzen Tag nach einem geeigneten Script gesucht, mit dem ich den Öffnungsstatus einer Praxis anzeigen kann. Da habe ich auch etwas gefunden und mit meinen Laienhaften Wissen nach meinen Bedürfnissen bearbeitet. Das Problem jedoch ist, dass es bei den Öffnungszeiten an einigen Tagen eine Mittagspause gibt und in den Fällen lediglich der Nachmittagsstatus angezeigt wird, während vormittags der Status für geschlossen ausgegeben wird, obwohl eigentlich geöffnet ist.
Ich komme hier einfach nicht weiter und hoffe das mir hier jemand helfen kann.
Hier das zusammengebastelte Script.
PHP-Code:
<?php
function oeffnungszeiten()
{
// Wochentage (Montag = 1, Dienstag = 2, ... Sonntag = 7)
$close = array('6','7');
// Montag Vormittag von
if (date('N')==1)
$time_start = '08:00';
// Montag Vormittag bis
if (date('N')==1)
$time_stop = '13:00';
// Montag Nachmittag von
if (date('N')==1)
$time_start = '15:00';
// Montag Nachmittag bis
if (date('N')==1)
$time_stop = '18:00';
// Dienstag Vormittag von
if (date('N')==2)
$time_start = '08:00';
// Dienstag Vormittag bis
if (date('N')==2)
$time_stop = '13:00';
// Dienstag Nachmittag von
if (date('N')==2)
$time_start = '15:00';
// Dienstag Nachmittag bis
if (date('N')==2)
$time_stop = '18:00';
// Mittwoch Vormittag von
if (date('N')==3)
$time_start = '08:00';
// Mittwoch Vormittag bis
if (date('N')==3)
$time_stop = '13:00';
// Donnerstag Vormittag von
if (date('N')==4)
$time_start = '08:00';
// Donnerstag Vormittag bis
if (date('N')==4)
$time_stop = '13:00';
// Donnerstag Nachmittag von
if (date('N')==4)
$time_start = '15:00';
// Donnerstag Nachmittag bis
if (date('N')==4)
$time_stop = '18:00';
// Freitag Vormittag von
if (date('N')==5)
$time_start = '08:00';
// Freitag Vormittag bis
if (date('N')==5)
$time_stop = '14:00';
// Feste Feiertage
$holiday = array('01.01','01.05','03.10','25.12','26.12');
// Bewegliche Feiertage
$intJahr = date("Y");
$intMon = date("m");
$intTag = date("d");
$feiertag ="keiner";
$EasterSonday = easter_date($intJahr);
if ( ($intTag == date("j", ($EasterSonday - 2*86400))) && ($intMonat == date("n", ($EasterSonday - 2*86400))) )
{
$feiertag="Karfreitag";
}
if ( ($intTag == date("j", ($EasterSonday + 86400))) && ($intMonat == date("n", ($EasterSonday + 86400))) )
{
$feiertag="Ostermontag";
}
if ( ($intTag == date("j", ($EasterSonday + 39*86400))) && ($intMonat == date("n", ($EasterSonday + 39*86400))) )
{
$feiertag="Christi Himmelfahrt";
}
if ( ($intTag == date( "j", ($EasterSonday + 50*86400))) && ($intMonat == date( "n", ($EasterSonday + 50*86400))) )
{
$feiertag="Pfingstmontag";
}
// Prüfen ob geöffnet ist [ WOCHENTAG | UHRZEIT | FEIERTAG ]
// Wenn ja ...
if (date('N') != in_array(date('N'), $close) && date('H:i') >= $time_start && date('H:i') <= $time_stop && date('d.m') != in_array(date('d.m'), $holiday))
{
// Ausgabe OFFEN
$offen="Wir sind noch bis ".$time_stop." Uhr für Sie da!";
}
// Wenn nein ...
else
{
if (date('d.m') == in_array(date('d.m'), $holiday))
{
if (date("d.m")=="01.01")
$feiertag="Neujahr";
if (date("d.m")=="01.05")
$feiertag="Tag der Arbeit";
if (date("d.m")=="03.10")
$feiertag="Tag der Deutschen Einheit";
if (date("d.m")=="25.12")
$feiertag="1. Weihnachtstag";
if (date("d.m")=="26.12")
$feiertag="2. Weihnachtstag";
}
else {}
if ($feiertag != "keiner")
$offen="Zur Zeit ist unsere Praxis wegen ".$feiertag." geschlossen.";
else
$offen="Zur Zeit ist unsere Praxis geschlossen.";
}
return($offen);
}
$offen = oeffnungszeiten();
echo $offen;
?>
Kommentar