Was soll der Unfug?
Da ich immer noch zu faul/blöd/doof beschäftigt bin,
um eine richtige Website zu fabrizieren, hab ich diese
provisorische Notlösung
zusammengezimmert. Sie diente ursprünglich dem Test einiger
PHP-Basteleien
unter verschiedenen Webserver-Konfigurationen. Deswegen gibtsgabs fast bei halbwegs
jedem (mir) bekannten Free-Webspace-Hoster eine Variante dieser Website.
Wer sie alle findet, darf sich freuen. Sie sind Teil des
weltumspannenden
Houmpäidsch-NetZwerges
(englisch: »homepage net-dwarf« oder kurz »HPND«).
Und
falls es dir, geneigter Leser, noch nicht aufgefallen ist: Kaum einer der hier versammelten Texte ist wirklich
berndernst gemeint.
Fehlermeldungen
Für hier hin und wieder auftauchende PHP-Fehlermeldungen gibt es im Wesentlichen zwei Gründe:
- Entweder ich schraube gerade am Script herum (Tritt praktisch nie auf, da ich nur 1000-prozentig getestete Versionen hochlade).
- Oder die Seiten, die du betrachtest, werden auf einem Server gehostet, dessen Administrator sich nicht so genau auskennt. Das ist zwar nicht schön, soll aber vorkommen.
Quelltexte
Wer sich unbedingt den HTML5-Quelltext dieser Seiten ansehen möchte, darf das gerne tun. Auch die kleinen Schlaumeier, die es spannend finden, anderer Leute HTML durch den W3C-Validator zu jagen, dürfen das ebenfalls gerne machen. Aber sie möchten bitte die Resultate für sich behalten.
Der Quältext des PHP-Scripts ist nicht wirklich veröffentlichungswürdig.
Tageszeitabhängiger Spruch
Diese Funktion ermittelt die aktuelle Tageszeit als Minutenwert. Alle Minutenwerte, die eine Anzeigeänderung auslösen, sind in einem Array gespeichert. So lange der nächsthöhere Minutenwert nicht erreicht ist, wird der Spruch zum aktuellen Wert eingeblendet.
Eine mögliche Erweiterung wäre eine Einfärbung der Seite je nach
Sonnenstand. Seit PHP5 gibts dafür
einige neue
interessante Funktionen.
Ach ja, und wer hier nach tageszeitabhängige Begrüßung
sucht,
ist woanders
vielleicht besser dran. Dort findet sich dann sicher auch die
Diskretionsabstandsmarkierung
,
von der man hier nichts weiter lesen wird.
Sonnenstand
Dieses experimentelle Feature zeigt die Uhrzeit des Sonnenaufgangs und des Sonnenuntergangs an einem bestimmten Ort in DE (normalerweise Berlin) an.
Dein Besuchsverhalten
Das Script schiebt deinem Browser ein Plätzchen unter. Damit kann es ermitteln, wann du das letzte Mal auf diesen Seiten vorbeigeschaut hast.
Paranoide Datensicherheitsfanatiker, die das Versenden von Cookies ausgeschaltet haben, müssen natürlich auf dieses Späßchen verzichten. Ich denke, sie werden damit leben können.
Von welcher Web-Seite du herkommst
Dieses Feature nutzt den
HTTP-Header
Referer
. Im Referrer-String
wird nach verschiedenen Zeichenmustern gesucht. Wird ein passendes
gefunden, gibts einen dummenwitzigen Spruch dazu.
Der Referrer ist von Client-Seite aus beliebig veränderbar und muss damit nicht die korrekte Ausgangs-Adresse angeben. Neuerdings(TM) kürzen die meisten Webbrowser ihn oft zusammen oder lassen ihn gleich ganz weg.
Was dein Browser über dich erzählt
Hier versucht sich das Script als Hellseher für Sprachen und Nationalitäten.
Dabei wird der HTTP-Request-Header
Accept-Language
ausgewertet, über den Browser mitteilen können, welche Sprache(n) der
Browserbenutzer
beherrscht. Um einwandfrei zu funktionieren, braucht diese Funktion
ehrliche
Angaben. Deutsch sprechende
Österreicher und
Schweizer
beispielsweise, die sich wundern, dass das Script sie als
Deutschländer
Würstchen
bezeichnet, können in ihrem Browser die entsprechenden
Kennungen
(de-AT
, de-CH
) hinzufügen und in der Liste ganz nach
oben rücken.
Das Script erkennt auch Klingonisch sprechende Besucher. Eine Lokalisierung ist derzeit leider noch nicht möglich, weil bisher kein entsprechendes Protokoll zum Datenaustausch mit dem Hohen Rat vereinbart werden konnte.
Zufällig generiertes Passwort
Erzeugt ein Passwort mit 16 Zeichen. Die Zeichen aus der Liste: »abdefghijklmnopqrstuvwxyz0123456789« werden dabei zufällig gemischt. Außerdem wird an einer zufälligen Stelle ein Zeichen aus der Liste »+#-,.<« eingefügt. Alle Zeichen sind ohne Shift-Taste erreichbar (zumindest auf meinem Notebook …).
Kurze Versions- und Hotfix-Geschichte
Hinweis: Die Versionsgeschichte ist in absteigender Reihenfolge notiert. So sieht man immer zuerst, was zuletzt geändert wurde. Falls das überhaupt jemanden interessiert. Aber man kann ja nie wissen! Und überhaupt. Und so.
- Ausblick auf die übernächste Version:
- Farbspielereien und wenn ich schon mal dabei bin, ein aufgeräumteres Style-Sheet
- Mehr datumsabhängige Blödeleien gibts unter /HeuteIst.php
- Vorerst nicht eingebaut werden …
- … Smarty-Unterstützung
- … MySQL-Unterstützung
- Vorschau auf Version 2.69
- Session-Erkennung ohne Cookies: Die Umschaltung von mit auf ohne und zurück funktioniert noch nicht erwartungsgemäß.
- Ein selbstgebastelter Ersatz für die seit geraumer Zeit pensionierte Wetterfee.
- Die bestmögliche marquee-CSS-Animations-Art mit möglichst wenig Prozessorbelastung finden.
- Ein selbstgebastelter Ersatz für die seit geraumer Zeit pensionierte Wetterfee.
- Version 2.68 (...2022-09-18) Not-Update
- Anpassung an das Sapi3:: API: Auslagerung des Access-Loggings und der Session-Erkennung. Letzere allerdings derzeit deaktiviert.
- Version 2.67 (...2022-07-13...) nicht veröffentlicht
- Anpassung an das Sapi3:: API.
- Version 2.66 (2022-06-27) Junikäfer
- Server-Access-Log-Krempel ausgelagert.
- Mehr Infos (Mobile Client), Korrigierte Infos (Anzahl bisheriger Besuche per Sitzung).
- Käfer: Die mod_rewrite-Regeln sind irgendwie kaputt: Sie erlauben seit einiger Zeit keinen Zugriff aufs /static/-Verzeichnis mehr. Mindestens bis zum 18.06.2022 hat es aber noch funktioniert.
- Mehr Infos (Mobile Client), Korrigierte Infos (Anzahl bisheriger Besuche per Sitzung).
- Version 2.65 (2021-07-14...2021-08-11)
- Diverse kleine Ver(schlimm)besserungen und Flickschustereien.
- Ein neuer YANO-Versuch gestartet.
- Version 2.64 (2021-07-01...2021-07-13)
- CSS-Animationen nur noch aktiv für Palemoon >= 28.14.0.
Alle anderen Browser zeigen marquee-Elemente tapfer weiter so an, wie weiland der Internet Explo
drer.- Intern: Wenn der scriptausführende Apache hinter einem revers proxierenden (OpenResty-)NGinx hängt, kann von PHP-Seite aus nicht erkannt werden, über welches Protokoll die Resource vom Client abgerufen wurde. Hier: example.lima-city.de liefert HTTP/2 aus, aber das Script sieht nur HTTP/1.0, weil NGinx die Anfrage eben so an den Apachen weiterreicht. Was für ein Mist ... Anstatt drei verschiedener HTTPS-Signalisations-Header wenigstens einen Via-Header mitzuschicken, wäre anscheinend zu viel verlangt.
- Version 2.63 (2021-06-17)
- Die Scrollfunktion des marquee-Elements wird in modernen Browsern jetzt mit CSS-Animationen simuliert.
- Session-Erkennung ohne Cookies funktioniert halbwegs (experimentell).
- Server-Access-Logs sind wieder da.
- Session-Erkennung ohne Cookies funktioniert halbwegs (experimentell).
- Version 2.62 (2021-06-05) Logorrhoe
- ?weblib_logo aktualisiert. Wenn auch die Versionsangaben nicht (mehr) von Bedeutung sind.
- Beide Grafikausgaben (
Logos
) funktionieren wieder.- Alle drei Info-Unterseiten sind wieder da. ?phpinfo allerdings unverschönert.
- Beide Grafikausgaben (
- Version 2.61 (2021-06-01) Zufallszitat
- Zufallszitat läuft (wieder).
- Version 2.60 (2021-05-10...31) Alles neu macht der Mai & PHP 7.4 & PHP 8
- Bis auf das Zufallszitat sollte jetzt wieder alles so laufen, wie vor Jahren mal gedacht.
- Session-Cookie-Support, weil das ETag-Gewurstel nicht so zu funktionieren scheint, wie gedacht. Auch an der Textformulierung muss noch gefeilt werden.
- Kangaroos+Koalas-Fix gefixt. Ob der jemals korrekt gearbeitet hat? Zefix!
- Quälcode aufgeräumt, Abhängigkeiten von längst vergammeltem Infrastruktur-Code (weblib, xsgi 0.x, exec-irgendwas) befreit und dabei einige Fehler beseitigt (und viele schöne neue hinzugefügt).
- Am CSS herumgefummelt. Sieht aber immer noch Scheiße aus.
- Einen Haufen Links mit aktuell(er)en URLs versehen.
- Fast allen alten HTML-Kram durch semantisches(TM) HTML5 ersetzt. Mein niegelnagelneuer Opera-7-Browser kann jetzt seine HTML5-Fähigkeiten so richtig ausspielen! Yeaaaaah!
- Versionssprung, weil die Umbauversuche startend mit den Versionsnummern 2.40 und 2.50 gescheitert waren. Gut, Versuch 3.0 auch, aber der war eh nie erwähnenswert.
- Session-Cookie-Support, weil das ETag-Gewurstel nicht so zu funktionieren scheint, wie gedacht. Auch an der Textformulierung muss noch gefeilt werden.
- Version 2.39 (2017-03-02) PHP 7 & 7.1
- adapted to work with exec.php 0.33 (xerror:: instead of error::)
- Version 2.38 (2016-05-26) More Music
- Added selected youtube playlists to weekday related music.
- Rahmentest abgeschaltet.
- Version 2.37 (2016-04-29) Internal
- Updated to work with weblib 5.32 (exec-api 5.19)