PHP
PHP Konstanten
Erstellt am Sonntag, dem 23. Oktober 2011, geändert am Freitag, dem 16. Dezember 2011
Verwendet man Konstanten in PHP mit einer einfachen TRUE-FALSE-if-Abfrage, wird man feststellen, dass diese TRUE ergibt, auch wenn die Konstante gar nicht gesetzt ist. Denn PHP erkennt dann den Namen der Konstante als String und verwandet diesen in einen Boolean-Wert. Dieser ist natürlich TRUE. Abhilfe schafft die PHP-Funktion defined. Diese prüft, ob die Konstante auch wirklich gesetzt ist.
Zum Artikel Kommentar schreiben
Open Flash Chart
Erstellt am Samstag, dem 11. Dezember 2010, geändert am Dienstag, dem 28. Dezember 2010
Open Flash Chart kann man zur Darstellung von Chart-Elementen, auf Basis von Flash, benutzen. Es ist kostenlos und Open Source. Hauptsächlich wird es mit PHP verwendet, jedoch existieren auch Bibliotheken für Ruby, .NET, Perl, Java, Python und noch ein paar andere Programmiersprachen.
Open Flash Chart liegt bereits in der Version 2 vor, jedoch kann die Version 1 immernoch benutzt werden. Mit OFC lassen sich verschiedene Diagrammtypen, wie das Balkendiagramm oder das Kuchendiagramm bspw. auf einer Webseite abbilden. Übergeben werden die anzuzeigenden Daten per JSON und können natürlich dynamisch bspw. aus einer Datenbank ausgelesen werden. JavaScript bindet die Charts dann auf der Webseite ein.
Die Homepage des Projekts (englisch) liefert eine gute Beschreibung, sowie mehrere Tutorials zur Anwendung.
Zum Artikel Kommentar schreiben
SQL-Injection-sichere Benutzeranmeldung
Erstellt am Mittwoch, dem 10. November 2010, geändert am Donnerstag, dem 25. November 2010
Nach langer Pause endlich wieder Zeit gefunden etwas zu schreiben
.
Eine eigene Benutzeranmeldung mit PHP und MySQL zu schreiben ist einfach (zumindest, wenn man sich mit der Materie auskennt). Hier möchte ich einen kurzen sicherheitsrelevanten Tipp dazu abgeben. Bei den meisten Skripten wird der Benutzername erst mit der PHP-Funktion “mysql_real_escape_string” maskiert und anschließend über ein Query an die Datenbank weitergegeben um den Benutzer zu identifizieren. Da man sich jedoch nicht sicher sein kann, ob es in der Maskierungsfunktion nicht doch ein Schlupfloch für SQL-Injections gibt, kann man folgenden Trick anwenden.
Dazu schneidet man den Benutzernamen nach dem zweiten oder dritten Zeichen ab, maskiert diese Zeichen und lässt sich einfach eine Liste mit allen Benutzern dessen Namen mit den zwei oder drei übergebenen Zeichen anfangen ausgeben. Der Rest, sprich der genaue Vergleich, wird mit PHP in der while-Schleife erledigt. Damit ist eine Abfrage eines definierten Wertes, wie eines Benutzernamen, an die Datenbank absolut sicher vor SQL-Injections.
Zum Artikel Kommentar schreiben
PHP 5.3 unter Debian
Erstellt am Montag, dem 19. Juli 2010, geändert am Sonntag, dem 12. Juni 2011
Gerade für Entwickler ist es interessant neue Features auszuprobieren, denn je eher sie wissen welche Möglichkeiten die Neuerungen von Software bieten, desto besser können sie sie für sich oder andere einsetzen. Doch auf Debian-Systemen bekommt man über das Repository nur die ausgiebig auf deren Sicheheit und Stabilität geprüften Versionen (was natürlich auch gut so ist).
Um dennoch die aktuellste Version einer Software zu verwenden, muss man diese meist direkt von der Entwicklerseite herunterladen und selbst kompilieren. Das ist nun aber nicht mehr zwingend nötig – zumindest nicht für PHP. Ein Atikel auf Dotdeb beschreibt, wie man die Installation bzw. das Update über APT einrichtet. Hier der direkte Link zur Archivseite.
Man sollte jedoch zuerst die aktuelle Version von PHP, falls installiert, deinstallieren, da sonst die neuen Pakete ignoriert werden. Weiter sollten Sie sich den Artikel genau durchlesen und auf die Sicherheitshinweise achten!
UPDATE: Die Pakete von Dotdeb sind jetzt auch GPG-signiert und können wenn man folgende Zeilen auf der Konsole ausführt nun ohne Warnung über APT oder Aptitude installiert werden.
gpg –keyserver keys.gnupg.net –recv-key 89DF5277
gpg -a –export 89DF5277 | sudo apt-key add -
Hier der Link direkt zum Artikel auf Dotdeb.
Zum Artikel Kommentar schreiben