Blog gehackt? (So etwas sagte der Hoster dazu.) Aber nein doch, einfach nur einen Upgrade auf WordPress 2.8 gemacht. Da nimmt man WordPress Wichs und Weg, mit einem Klick ist alles wech…
-
Nachtwächter
Kommentare
Kommentieren
In der Archivversion kann nicht kommentiert werden.
Bio am 18.6.2009 um 10:20
wie kann man nur solche funktionalitäten implementieren, die auf »teufel komm raus« löschen bis der arzt kommt?
ganz grosses entwickler-kino!
Nachtwächter am 18.6.2009 um 14:34
Tja, diese tolle PHP-Funktion (PHP ist überhaupt eine ganz tolle Sprache!) zum Löschen von Verzeichnisstrukturen bekommt als Parameter ein oder mehrere Strings mit den Verzeichnisnamen. Normalerweise steht so etwas in einer Variablen, ist ja abhängig von der lokalen Konfiguration. In PHP (wie gesagt, eine ganz tolle Sprache) muss man eine Variable aber gar nicht deklarieren, sie erhält bei erster Verwendung den praktischen Wert »null«. (Das ist so etwas ähnliches wie »undef« in perl.) Und wenn man in dieser tollen Sprache die tolle Funktion zum Löschen von Verzeichnishierarchien mit einem »null« als Parameter aufruft, dann nimmt die einen Default-Wert an. Und der lautet »/«. Echt. Das ist PHP! Der Fehler war ein Buchstabendreher. Und der Rest war PHP! Manchmal, wenn ich die Abgründe dieser beliebten Sprache kennenlerne, frage ich mich, wie viele hundert tödlicher Bugs noch in den heute beliebten Web-Anwendungen schlummern und auf ihre Chance warten…
Bio³ am 18.6.2009 um 14:47
LOL
das ist ja mal wirklich eine tolle funktionalität von PHP.
anstatt einfach ein fehler »null-referenz« auszugeben, nimmt die funktion einfach root und löscht alles.
für mich der brüller des tages!
Nachtwächter am 18.6.2009 um 15:32
Das ist wirklich nicht die einzige Funktion in PHP, die ein total verkacktes Design hat. »Was nehmen wir beim Löschen mal als Default?« – »Ach, nehmen wir doch das Root-Verzeichnis.« – kann man solche Leute eigentlich in irgendeiner Ecke der Welt noch teeren und federn?
Um die meisten gefährlichen PHP-Funktionen haben die WordPress-Entwickler Wrapper geschrieben, die das Schlimmste verhindern sollten, aber hier eben noch nicht. Und prompt passiert das Schlimmste. Das gestattet auch einen Blick in den Coding-Stil.
(Und wenn ich selbst noch einmal eine größere Sache für das Web programmiere, dann wohl nicht mehr in PHP. Es ist nicht wirklich für größere Sachen geeignet. Ob ich wirklich Ruby lerne… ich weiß nicht. Aber Python ist ja auch ganz lecker, wenn die demnächst in den nächsten zwei Jahren ihre Stringprobleme mit UTF-8 konsolidiert gekriegt haben. Und vorher kriege ich bestimmt keinen Programmierbedarf, wenn mir nicht etwas ganz Besonderes vor die Füße fällt…)
Bio³ am 18.6.2009 um 16:03
ich nutze grad PHP mit joomla. aber auch bei joomla 1.5.x haben die entwickler ne recht gute api drumrum geschrieben und muss so nur wenig direkt in nativem PHP schreiben.