Call for Papers für den “Month of PHP Security” gestartet

Geschrieben von Benjamin Carl am Sonntag, den 28. Februar 2010

Der PHP-Sicherheitsexperte Stefan Esser, initiiert eine neue Aktion zur Verbesserung der freien Skriptsprache. In Anlehnung an den von ihm 2007 gestarteten  “Month of PHP Bugs” soll der Mai täglich neue Informationen für PHP-Interessierte bieten. Im Unterschied zu seiner vorigen Initiative bezieht Esser jedoch nun die Community mit ein. In einem Aufruf auf der Projektwebsite bittet er um interessante Einsendungen. Diese können neben Artikeln über Lücken im Kern der freien Skriptsprache auch Abhandlungen zu theoretischen Themen oder Anleitungen für Programmierer umfassen.

Quelle: heise.de

Einen Kommentar schreiben

Kategorie: Allgemein, PHP5

Ich suche gute PHP-Entwickler

Geschrieben von Benjamin Carl am Freitag, den 26. Februar 2010

Ich bin auf der Suche nach guten PHP-Entwicklern die Zeit, Lust und die notwendigen Skills haben, die PHP5-Bibliothek “moovrelocator” mit- bzw. weiter zu entwickeln. Mir fehlt es momentan an Zeit, als das ich das gesamte Projekt alleine bedienen könnte, aber mit ein wenig Verstärkung könnte man den Prototypen in ein stable Release verwandeln.

Wer Lust, Zeit und die notwendigen Skills besitzt, soll sich doch einfach per Email bei mir melden. Stell euch einfach kurz vor, beschreibt eure Skills und vor allem schreibt ein wenig was über euch persönlich.

Den Grundstein habe ich mit dem Prototypen gemacht, jetzt wollen wir mal sehen in welche Riuchtung sich das ganze bewegt.

Benjamin Carl

Einen Kommentar schreiben

Kategorie: Open-Source-Software, PHP5

JavaScript Runtimeloader – dynamic (runtime) loading of JavaScript-Files (Ext JS compatible)

Geschrieben von Benjamin Carl am Donnerstag, den 18. Februar 2010

It’s finally done! Soeben habe ich den JavaScript + CSS – Runtimeloader in Version 0.1 alpha fertiggestellt. Er bietet die Möglichkeit JavaScript- und CSS-Dateien zur Laufzeit nachzuladen und einer gewünschten DOM-Node hinzufügen. Dies ermöglicht beim Einsatz von JavaScript-Frameworks wie z.B. Ext JS eine sehr viel klarere (Ordner- und Datei-) Struktur sowie die Möglichkeit den (ebenfalls von mir geschriebenen) Progress-Indicator anzudocken – welcher dann für eine schöne Ladeanzeige verantworlich ist. So sieht der Anwender ganz genau was genau vor sich geht, wenn mal eben 1 – 1,2 MB Framework-Dateien und Stylesheets geladen werden bis sich ein Bild aufbaut.

Des weiteren verfügt der Runtimeloader über eine ganz bequeme Möglichkeit Dateien in einer Queue angeordnet zu laden und diese wirklich nacheinander zu laden ohne sich dabei auf eingebaute Browserfunktionalität, die ja von Browser zu Browser differiert, verlassen zu müssen.

Der Runtimeloader ist voll Cross-Browser-Kompatibel und wurde getestet unter Windows XP mit SP2 + SP3 und den folgenden Browsern: Internet-Explorer 6/7, Firefox 3.0.15, 3.5.7, Opera 10.10, Safari 4.0.4

Wer interesse an den Quellen hat, der möge bitte einfach kurz einen Kommentar verfassen und mir dann eine Email schreiben an die Emailadresse die im Impressum vermerkt ist. Dies ist ein kleines Experiment – je nach Nachfrage wird das Projekt ggf. noch ein wenig ausgeweitet.

Denjenigen der Kontakt mit mir aufnimmt, erwartet folgendes:

  1. Die Runtimeloader-class (Runtimeloader.class.js – Singleton JS-Class- komplett kommentiert + debug/dev-Kommentare)
  2. Die Progress-class (Progress.class.js – Singleton JS-Class – komplett kommentiert + debug/dev-Kommentare)
  3. Ein Beispiel, wie das ganze einzusetzen ist – inkl. dem Ext JS onReady-replacement Beispiel

Alles komplett als ZIP-Archiv zum testen …

Als Leckerbissen nioch ein kurzer Auszug zur API:

Im Head oder Body Bereich der Seite einfügen:

1
2
<!-- runtime loader -->
<script type="text/javascript" src="/www/view/static/js/de/upside/class/Runtimeloader.class.js"></script>

Instanziieren:

1
var runtimeLoader = Runtimeloader.getInstance();

Ein Datei-Objekt zum Laden erstellen:

1
2
3
4
5
6
7
8
9
10
11
12
13
var file = new Object();
file.src = '/www/view/static/js/com/extjs/ext-all.js';
file.wait = true;
file.onbeforeload = function(){
    // e.g. show progress ...
};
file.onprogress = function(){
    // e.g. show progress indicator / gif ...
};          
file.onload = function(){
    // e.g. show msg file loaded ...
};          
file.target = 'body';

Add the file to loading queue:

1
runtimeLoader.queueAdd(file);

Start loading:

1
2
3
runtimeLoader.execute(function(){
    // e.g. remove progress html+css ...
});

Neugierig geworden?

Euer Benjamin Carl

Kommentare (3)

Kategorie: HTML + CSS, HowTo's, JavaScript, Open-Source-Software, Tipps + Tricks

PHP 5: Zugriff auf den Namen einer Child-Klasse aus der Parent-Klasse (__CLASS__ für child)

Geschrieben von Benjamin Carl am Sonntag, den 14. Februar 2010

Wer innerhalb einer Klasse (z.B. einer generischen Singleton-Klasse [Generic_Singleton] im Destructor (__destruct()) auf den Namen der Child-Klasse (die erbende Klasse) zugreifen muss/möchte, der wird feststellen, dass __CLASS__ an dieser Stelle (so wie es auch sein sollte) den Namen der Klasse die die Methode enthält (in diesem Beispiel die generische Singleton-Klasse) beinhaltet (Generic_Singleton). Möchte man aber den Namen der Klasse die von Generic_Singleton erbt erhalten, hilft folgender Aufruf:

1
2
3
foo() {
    return get_class($this);
}

Somit erhält man bei Aufruf von foo(); den Namen der Child-Klasse.

Ich weiß nicht inwieweit dies ein “Bug” in PHP ist, der ggf. mit PHP 5.3 oder 6 beseitigt wird. Aber momentan getestet unter 5.2.9 funktioniert dies einwandfrei.

Einen Kommentar schreiben

Kategorie: HowTo's, PHP5, Tipps + Tricks

benjamin carl

Software-Architekt mit Fokus auf          liest gerade


  • prof.Softwareentwicklung mit PHP
  • test-driven development (TDD)
  • Qualitätssicherung
  • Automatisierung + Standardisierung
    von Entwicklungsprozessen
Get Adobe Flash playerPlugin by wpburn.com wordpress themes