Zeiterfassung
Mit Vanilla PHP und Legacy Code die SQLite Datenbank befragt und die sagt:
Datum | Start | Ende | Pause | Zeit |
---|---|---|---|---|
23.10 | 08:00 | 17:00 | 60 | 8.0 |
24.10 | 08:00 | 17:00 | 60 | 8.0 |
25.10 | 08:00 | 17:00 | 60 | 8.0 |
26.10 | 08:00 | 17:00 | 60 | 8.0 |
27.10 | 08:00 | 17:00 | 60 | 8.0 |
Insgesamt: 40.0 Stunden. |
Null-Koaleszenz-Operator
Wurde mal irgendwo in den PHP 7 Features erwähnt. Der Operator ist eine syntaktische Vereinfachung, die oft in Verbindung mit isset() und einem ternären Operator verwendet wird.
Ternären Operator
Im Backend lese ich mir mit meinem PHP CRUD Script alle Artikel aus der Datenbank ein und gebe diese in einer Tabelle aus.
Hier lasse ich mir unter anderem auch den Status der Artikel anzeigen. Je nach Status (1, 2 oder 3) wird die Zahl in einer anderen Farbe angezeigt.
PHP Verbrauch und Kosten berechnen
Bisher speichere ich lediglich die Zählerstände $zaehler_neu
und $zaehler_alt
in der Datenbank und lasse PHP die Berechnung mit den vordefinierten Zahlen durchführen.
Nicht besonders elegant, aber es funktioniert zumindest schon mal.
$preis_kwh = '0.25'; $gebuehr = '5.19'; $abschlag = '85.00'; $verbrauch = $zaehler_neu - $zaehler_alt; $kosten = $verbrauch * $preis_kwh + $gebuehr; $differenz = $abschlag - $kosten;
Das Ergebnis lasse ich in eine Tabelle ausgeben:
EGO-Shooter
Hier ein paar EGO-Shooter die sich kostenlos und ohne Installation direkt im Browser spielen lassen.
- ev.io - https://ev.io
- kirka - https://kirka.io
- polyblicy - https://gaming-style.com/polyblicy
- fields of fury - https://fieldsoffury.io
Das sind nur einige die ich gefunden habe. #browsergames
Datei löschen
Beim bearbeiten oder löschen eines Artikels, auch (sofern vorhanden) das dazugehörige Bild ersetzten oder entfernen, ohne das PHP dauernd meckert.
PHP Warning: unlink(../image/bild.jpg): No such file or directory in
Und das geht so.
Was passiert am 24. September 2022?
1. NICHTS!
2. Der Suchbegriff Was passiert am 24. September 2022?
geht Viral^^
3. Deutsche durchsuchen das Internet nach dem Versprecher von Friedrich Merz.
4. Der hashtag #WasPassierteAm24September2022 trendet morgen auf Twitter^^
PHP Deprecated
Und noch ein PHP Deprecated ab PHP 8.1 ... wurde gerade beim refactoring der SQLite CRUD in die Fehlerlogs geschrieben. Dieses mal betrifft es meine htmlspecialchars()
Funktion und komischerweise nur bei meinem SQLite Script.
Passing null to parameter #1 ($string) of type string is deprecated
Aber auch hier habe ich schnell eine Lösung gefunden und die geht so:
strftime Deprecated
Ab PHP 8.1 erscheint bei Verwendung der Funktion strftime()
ein PHP Deprecated Hinweis al´a:
Function strftime() is deprecated
22022022
22.02.2022 Ein Palindrom-Datum!
Wo wir gerade beim Datum sind, ab PHP 9 fliegt die Funktion strftime()
raus, daher brauchen wir eine Alternative.
Kurz Notiert!
CRUD SQLite
Zu verschenken... eine voll funktionsfähige CRUD in PHP für SQLite3 in Simple 🙄
public function __construct($db) { $this->db = new SQLite3($db); $this->init(); }
Die Suche schneller finden.
hmmmm... klingt Komisch^^
Wenn die Suchen hier auf der Seite wieder mal nichts findet, dann zeige wenigstens alles andere zufällig schön Bunt an.
PHP file_exists
Erst mal gucken ob die Datei überhaupt existiert.
if (file_exists('/apps/rss.php')) { echo 'Ja, die Datei existiert!'; } else { echo 'Nein, existiert nicht!'; }
Eine Textdatei einlesen
Kompletten Inhalt ausgeben.
$flatfile = 'textdatei.txt'; $inhalt = file_get_contents($flatfile); echo $inhalt;
Nur Zeile 3 ausgeben.
spl_autoload_register
Gerade mal das Update auf die neue PHP Version 8.0.9 gemacht und direkt auch meine __autoload
funktion durch die spl_autoload_register
ersetzt.
Lockdown Metastudie
Das du dich immer noch so dafür interessierst!
Hört das einer von euch auch öfter aus dem Freundes bzw. Bekanntenkreis?
Egal... Hier wieder was aktuelles zum Thema Corona & Co.
Der Facharzt für Mikrobiologie, Virologie, Infektionsepidemiologie und Tropenmedizin, Prof. DDr. Martin Haditsch in einem fast einstündigen Interview mit und auf Punkt.PRERADOVIC
Der R-Wert
Nur die Anzahl der (PCR) Test´s haben Einfluss auf den R-Wert, gebt euch das Video https://youtu.be/FtlPO1PktZA
Wer steckt hinter der WHO?
Der Weltgesundheitsorganisation (WHO) schlägt wegen ihres Missmanagements in der Corona-Krise und den engen Verbindungen zur Pharmabranche teils heftige Kritik entgegen.
Endlos Pandemie
Auch ohne einen einzigen neuen Infizierten würden allein aufgrund der Fehlerquote des Tests tausende neue „Fälle“ gemeldet.
https://multipolar-magazin.de/artikel/warum-die-pandemie-nicht-endet
Archiv2 v0.9
Alle Artikel nach Monat und Jahr gruppiert in einer Definitionsliste ausgeben.
SELECT Month(datum) AS Month, Year(datum) AS Year, titel, link FROM artikel WHERE status=1 ORDER BY datum DESC
Modul: Artikel Archive
PASSWORD ARGON2ID
Durch das Updaten auf die PHP Version 7.4.4 funktionierten die User und die Password Class für mein 4CMS User Login nicht mehr.
Zwar war der password_hash
den ich dort verwendet habe sehr sicher, aber veraltet.
Ich habe daher die Registrierung und den Login nun komplett neu geschrieben und verwende zum verschlüsseln des Passwortes jetzt den Algorithmus Argon2id
.
password_hash()
password_verify()
Login Download: https://github.com/bUTschy/php-login
Die Halbwertszeit für Viren
Wie lange geht eigentlich so eine Virus Saison und welche sind es?
Quelle: https://emedicine.medscape.com
Am Ende des Jahres
Machen wir eine Wette Herr Dr. B Sollte das Virus sich am Ende des Jahres als gefährliche Pandemie erwiesen haben unterstütze ich Sie nach besten Kräften um die Approbation von den Herren Dr. W und Dr. S "einzukassieren" Wenn nicht geben Sie ihre zurück, weil Sie dann ja zu den "..weniger intelligente Köpfe unserer Gesellschaft.." gehörten die man besser nicht auf Patienten loslassen sollte. Top, die Wette gilt?Rainer Z. (Internet)
Déjà vu: Pandemie Stufe 6
Profiteure der Angst - das Geschäft mit der Schweinegrippe, so der damalige Titel eine alten arte Dokumentation vom 2009.
Damals hatte die WHO auch die Pandemie Stufe 6 für den Influenza Virus H1N1 erklärt, genau so wie jetzt beim Corona Virus SARS-COV-2.
Alubommel
TinyMCE Image Upload
Auch dem neuen WYSIWYG HTML Editor TinyMCE in der aktuellen Version 5.2 kann man das hochladen von Bildern beibringen und das ganz ohne Plugin. 🧐
PHP Version 7.4
PHP Notice: Trying to access array offset on value of type bool
Bei der gestrigen Umstellung auf PHP Version 7.4 wurde doch tatsächlich diese PHP Notice in die Logdatei meines 4CMS geschrieben.
Dank der Hilfe von Vitalij konnte ich das Problem schnell beheben.
Cookies auf butschy.de
Auf butschy.de wird nur ein einziger Session Cookie gesetzt, es handelt sich hierbei um ein sogenannten technisch notwendigen Cookie den ich ausschließlich für die Administration dieser Homepage benötige. Dieser wird wieder gelöscht, sobald der Browser geschlossen wird.
- Name: PHPSESSID
- Domain: butschy.de
- Value: 0f470a80e9a74e142[...]
Aus für phpforum.de
Nach fast 20 Jahren sehen wir uns durch die DSGVO gezwungen, unser Forum zu schließen. Wir könnten die geforderten Auflagen nicht oder nur mit unverhältnismäßig hohem Aufwand umsetzen.
Schade um das umfangreiche Archiv.
PHP 7.3
Das dritte Update für PHP 7 wurde veröffentlicht.
Die kompletten Release-Notes (incl. Beispiele) kann wie immer in der offiziellen PHP-Wiki eingesehen werden.
RSS Feed
Kennt noch wer RSS? Die letzten 5-10 Artikel einer Seite abgreifen ohne diese besuchen zu müssen.
Mit der Android App Feedly hole ich mir so von diversen Seiten immer die Aktuellen News auf mein Handy.
Unicode 2 Textarea
Kann man Unicode (Dezimal) via Click in eine Textarea einfügen ?
Ja, mit einer kleinen PHP-Funktion und etwas JS-Code ist das alles kein Problem. Hier in meiner Box demonstriere ich das mit einigen Emoji´s. ?
#unicode
#textarea
#emoji
#onclick
#insert
#function
Sitemap
Ich generiere hier mal eine dynamische Sitemap mit PHP und MySQL.
Der Inhalt dieser Sitemap ist für das menschliche Auge ungeeignet, klicken und glotzen nur auf eigene Gefahr. ?
Supportende PHP 5.x
Es ist soweit. Ende Dezember 2018 endet der Support für PHP 5.6.x. Ab dann wird es auch keine Sicherheitsupdates mehr für die 5er PHP Version geben.
Alle IP´s löschen
Jeder Kommentar in einem Artikel auf dieser Homepage beinhaltet auch die IP des Kommentierenden.
Will ich nach einer bestimmten Zeit diese IP´s aus allen bisherigen Kommentaren entfernen, führe ich in phpMyAdmin diesen SQL-Befehl in meiner Datenbank aus:
UPDATE kommentare SET kom_ip = ' ';
Homepage wieder Online
Tag Nummer 6, Homepage funktioniert wieder.
Schlechtester Support aller Zeiten: [...]wir möchten Ihnen mitteilen BLA unsere Technik überprüft BLA eventuelle Fehler beseitigt BLA BLA BLA... Ich hab echt nen Hals.
TinyMCE 4.3
Es gibt wieder einige Neuerungen im TinyMCE, aber immer noch kein Images-Upload bzw. einen File-Manager.
Ein bischen JS und man bekommt wenigstens ein Images-Upload ganz ohne Plugin hin.
CRUD - Aus 4 wird 1
Die Administration meiner PHP-Module bestand bisher immer aus 4 PHP-Dateien, eine view-x.php, eine edit-x.php, eine del-x.php und eine new-x.php.
PHP Mini PDO CRUD
Diese kleine Datenbank besteht aus nur einer einzigen Datei (index.php) in der wird alles gesteuert und sieht momentan so aus.
Lust zu Basteln ? dann lade dir das Script hier runter und mach es Schick, Schlank, Sicher, nur lass es in einer einzigen Datei, alles andere gibt es schon in Geiler ;)
PHP 7.0
PHP 7.0 ist da.
Die beliebte Skriptsprache PHP kommt nach über 10 Jahren mit der erste Major Release und Tausenden von Änderungen und einer nahezu Verdoppelung der Geschwindigkeit gegenüber PHP 5.6 daher.
Wen das auch immer Interessiert, hier die Changelog.
Datum auf Deutsch in PHP
Ich wollte gerade das Archiv-Modul und deren Blöcke überarbeiten und was muss ich da sehen [...] Alle Wochentage und Monate in englischer Sprache ?? Trotz strftime
und setlocale(LC_ALL, 'de_DE);
in meiner config.php.
PHP + MySQL Version
PHP + MySQL Aktualisiert.
- PHP-Version: 5.6.14 (alt: 5.5.12)
- phpMyAdmin 4.5.1 (alt: 4.4.61)
- MySQL 5.5.46 (alt: 5.5.44)
allow_url_fopen
Und ich wundere mich warum ich mit der neuen PHP-Version auf meinem Server nicht mehr auf das vorhanden sein externer Dateien prüfen konnte. Tja, die Funktion allow_url_fopen
war mal eben auf OFF.
Ein kurzes Tickes an meinem Hoster und die Funktion ist wieder ON, thx Speicherzentrum ;)
Index Reihenfolge
Die Reihenfolge ist ausschlaggebend.
- index.html
- index.htm
- index.php
- index.php5
Wenn in einem Verzeichnis eine index.html und ein index.php existieren, wird beim Zugriff auf dieses Verzeichnis immer erst die index.html ausgeführt, es sei denn, man ruft die index.php direkt auf.
Neuer Server
Mein Hoster hat meinen Account jetzt auf einen anderen schnelleren Server migriert und auch schon das DNS Update durchgeführt.
.htaccess
War ja klar, das die Zeile AddHandler x-httpd-php54 .php
die mir mein Hoster gegeben hat, in meiner .htaccess
nicht gleich auf anhieb funktioniert.
Denn aktuell gibt es einen Error 500 und der geht so:
4CMS Passwörter
Wo wir gerade bei Sicherheit sind, ich habe hier im 4CMS eben mein Passwort in "demo" geändert und in der Datenbank sieht das Passwort "natürlich verschlüsselt (nicht mit md5 / sha1)" so aus:
$2y$10$JJbolR9cjToadUN87Mop0eEhjdq.Hm4/xzwG.4e7KnzVezYsW5.kG
Jetzt ändere ich das Passwort erneut und nenne es wieder einfach nur "demo" und speichere es ab und jetzt achtet mal auf den Hash:
PHP Weiterleitung
Eine Weiterleitung via header();
if (!$user->eingeloggt()) { header('Location: login.php'); exit; }
TinyMCE 4.2.2
Ach siehe an, vom TinyMCE gibt es auch eine neue Version.
Lotto mit PHP
Gibt 6 unterschiedliche Zahlen aus 49 unsortiert aus.
$ziehung = range(1, 49); shuffle($ziehung); for($zahl = 1; $zahl <= 6; $zahl++){ echo $ziehung[$zahl]; }
Noch kürzer ?