Hallo zusammen,
bin neu hier im Forum und gleichzeitig Einsteiger in Sachen PHP.
Derzeit versuche ich spaßeshalber eine Art Anwesenheitskontrolle für mich und ein paar Kommilitonen zu basteln.
Hierbei soll beim Aufrufen der Seite der Tag, das aktuelle Datum und die Uhrzeit ausgegeben werden. Datum und Uhrzeit werden mittels time(); und date(); ermittelt. Die ID des Wochentags hole ich mir mit date("w"); und ziehe mir den entsprechenden Tag anhand der ID aus einer Datenbank.
Derzeit sieht das ganze so aus und funktioniert auch:
Dies alles möchte ich nun allerdings mittels einer externen Funktion (im Beispiel uhr genannt) realisieren.
Der Code der Funktion sieht folgendermaßen aus:
Wenn ich diese Funktion jetzt aber per include ($_SERVER['DOCUMENT_ROOT'] ...) usw. einfüge und per uhr(); in der index.php aufrufen will, passiert leider nix.
Die Daten für den Verbindungsaufbau zur Datenbank stehen ebenfalls in einer externen Datei, welche ich mithilfe des o.g. Befehls eingebunden habe.
Es ist mir wichtig, das alles wirklich als externe Funktion zu haben. Einerseits, weil es dann übersichtlicher ist und andererseits kann ich hier evtl. aus meinem Fehler lernen kann, statt nun irgendeine "drumherrum-Lösung" zu verwenden.
Habe natürlich schon mehrere Seiten im Netz befragt aber ich scheine irgendetwas zu übersehen.
Kann jemand auf anhieb meinen Fehler erkennen? Bin mittlerweile etwas ratlos
Vielen Dank für eure Unterstürtzung.
bin neu hier im Forum und gleichzeitig Einsteiger in Sachen PHP.
Derzeit versuche ich spaßeshalber eine Art Anwesenheitskontrolle für mich und ein paar Kommilitonen zu basteln.
Hierbei soll beim Aufrufen der Seite der Tag, das aktuelle Datum und die Uhrzeit ausgegeben werden. Datum und Uhrzeit werden mittels time(); und date(); ermittelt. Die ID des Wochentags hole ich mir mit date("w"); und ziehe mir den entsprechenden Tag anhand der ID aus einer Datenbank.
Derzeit sieht das ganze so aus und funktioniert auch:
PHP-Code:
if (mysqli_connect_errno() == 0) {
$sql = 'SELECT `wochentag` FROM `wochentage` WHERE `wo_id`="'.$tag.'"';
$ergebnis = $connection->prepare ($sql);
$ergebnis->execute();
$ergebnis->bind_result($tag);
while($ergebnis->fetch()){
# echo $tag;
}
}
else {
echo 'Die Datenbank konnte nicht erreicht werden. Folgender Fehler trat auf: <strong>' .mysqli_connect_errno(). ' : ' .mysqli_connect_error(). '</strong>';
}
echo "Heute ist ".$tag." der ".date("d.m.Y",$zeit)." und es ist ".date("H:i",$zeit)." Uhr".'<br />';
$connection->close();
Dies alles möchte ich nun allerdings mittels einer externen Funktion (im Beispiel uhr genannt) realisieren.
Der Code der Funktion sieht folgendermaßen aus:
PHP-Code:
<?php
date_default_timezone_set('UTC+1');
function uhr(){
$zeit= time();
$uhrzeit= date("H:i",$zeit);
$datum= date("d.m.Y", $zeit);
$tag = date("w");
if (mysqli_connect_errno() == 0) {
$sql = 'SELECT `wochentag` FROM `wochentage` WHERE `wo_id`="'.$tag.'"';
$ergebnis = $connection->prepare ($sql);
$ergebnis->execute();
$ergebnis->bind_result($tag);
while($ergebnis->fetch()){}
}
else {
echo 'Die Datenbank konnte nicht erreicht werden. Folgender Fehler trat auf: <strong>' .mysqli_connect_errno(). ' : ' .mysqli_connect_error(). '</strong>';
}
echo "Heute ist ".$tag." der ".$datum." und es ist ".$uhrzeit." Uhr".'<br />';
$connection->close();
}
?>
Die Daten für den Verbindungsaufbau zur Datenbank stehen ebenfalls in einer externen Datei, welche ich mithilfe des o.g. Befehls eingebunden habe.
Es ist mir wichtig, das alles wirklich als externe Funktion zu haben. Einerseits, weil es dann übersichtlicher ist und andererseits kann ich hier evtl. aus meinem Fehler lernen kann, statt nun irgendeine "drumherrum-Lösung" zu verwenden.
Habe natürlich schon mehrere Seiten im Netz befragt aber ich scheine irgendetwas zu übersehen.
Kann jemand auf anhieb meinen Fehler erkennen? Bin mittlerweile etwas ratlos

Vielen Dank für eure Unterstürtzung.
Kommentar