Screenshot von RESTClient beim Debugging von POST-Formularen

POST-Formulare mit Firefox-Addon testen [Toolbox]

  • Blog, Code

Bei der Entwicklung individueller Web-Applikationen gehören Eingabe-Formulare selbstverständlich dazu. An allen Ecken und Enden sollen Benutzer Daten eingeben und Einstellungen anpassen können. Viele dieser Formulare werden auf HTTP-Protokollebene als POST-Requests abgebildet.

Solche Requests lassen sich im Browser standardmäßig zwar wiederholen (F5 bzw. Strg/Cmd+R), aber schlecht schnell anpassen. Hilfe leistet uns in solchen Fällen ein kleines Firefox-Addon.

Weiterlesen »POST-Formulare mit Firefox-Addon testen [Toolbox]

Fehler: Maximale PHP-Laufzeit überschritten

CakePHP: debug() für große oder komplexe Objekte

  • Blog, Code
Fehler: Maximale PHP-Laufzeit überschritten

Maximale Skriptlaufzeit überschritten

CakePHP bringt die globale Funktion debug() mit, die sich bequem überall nutzen lässt, um beliebige Daten zu debuggen.
Bei Objekten, die viele tief geschachtelte Daten beinhalten, versucht debug() dann mit großem Eifer alle Daten darzustellen, die beispielsweise an einem Controller oder einem Model hängen. Je nach der tatsächlichen Datenmenge und der maximalen Skriptlaufzeit kann das dazu führen, dass das Skript im Ganzen beendet wird und der Programmablauf nicht ordentlich analysiert werden kann.

Weiterlesen »CakePHP: debug() für große oder komplexe Objekte

Suchergebnisse mit ack

ack statt grep für Code-Suche [mit CakePHP-Config]

  • Blog, Code

Für viele Entwickler ist grep unter Unix-artigen Betriebssystemen das Tool der Wahl, um Texte in Dateien zu suchen. Was liegt näher als es auch zu nutzen, um sich einen Überblick über Quellcode zu verschaffen?
Prinzipiell kann grep diese Aufgabe natürlich auch erfüllen, schließlich ist Quellcode auch nur eine Form von Textdateien. Es gibt aber mit ack ein Programm, das genau auf den Anwendungszweck Code-Suche optimiert ist.

Ack liefert in vielen Fällen einen sehr guten Überblick über fremden und eigenen Code und ermöglicht auch ohne eine ausgewachsene IDE Antworten auf Fragen wie: „Wo wird eine Funktion aufgerufen, die ich gerade bearbeiten möchte?“ oder „An welcher Stelle wird dieser Text in ein Template geladen oder ausgegeben?“

Weiterlesen »ack statt grep für Code-Suche [mit CakePHP-Config]

Trojaner „Telekom Rechnung“

Derzeit wird eine eMail mit Malware-Inhalt verstärkt durchs Netz geschickt. Enthalten ist ein Download-Link mit dem Hinweis auf eine Telekom-Rechnung, der eine .exe-Datei nachlädt.

!!! Diese Datei ist ein Trojaner, der von den meisten Virenscannern NICHT erkannt wird !!!

Der Inhalt der eMail sieht folgendermaßen aus, kann jedoch variieren:

Von: Telekom Deutschland <XXX>
Datum: Montag, 6. Januar 2014 09:08
An: <1euberweisung@credit-financing-uk.com>
Betreff: Ihre Telekom Mobilfunk RechnungOnline für Geschäftskunden 532569845419646126 vom 06.01.2014 des Kundenkontos 631631566752.

Sehr geehrte Kundin,
sehr geehrter Kunde

Im Anhang finden Sie die gewünschten Dokumente und Daten zu Ihrer
Telekom Mobilfunk RechnungOnline für Geschäftskunden vom Monat December, Download (Ihre Telekom Mobilfunk RechnungOnline für Geschäftskunden 126419725186935573 vom 06.01.2014 des Kundenkontos 221221461752).

Mit freundlichen Grüßen,
Geschäftskundenservice

Telekom Deutschland GmbH
Aufsichtsrat: Timotheus Höttges Vorsitzender
Geschäftsführung: Niek Jan van Damme Sprecher, Thomas Dannenfeldt,
Thomas Freude, Michael Hagspihl, Dr. Bruno Jacobfeuerborn, Dietmar
Welslau, Dr. Dirk Wössner
Eintrag: Amtsgericht Bonn, HRB 59 19, Sitz der Gesellschaft Bonn
USt-Id.Nr.: DE 122265872
WEEE-Reg.-Nr.: 60800328

Weiterlesen »Trojaner „Telekom Rechnung“

Segmentation Fault in libpthread mit Apache2 und APC

  • Blog, Code

Ein Segmentation Fault beim Start von Apache kann sicher viele Ursachen haben. Eine davon ist eine unscheinbare Änderung im APC-Modul, die den Apache beim Start so sehr behindert, dass er den einen Segmentation Fault wie diesen hier erleidet und nicht hochfährt:

apache2[2938]: segfault at f ip 00007ff081777854 sp 00007fff1f579a70 error 6 in libpthread-2.11.3.so[7ff08176f000+17000]

Weiterlesen »Segmentation Fault in libpthread mit Apache2 und APC

MySQL: InnoDB-Engine nicht verfügbar

  • Blog, Code

Die InnoDB-Engine für MySQL bietet gegenüber MyISAM einige Vorteile wie Transactions, feineres Locking und harte Fremdschlüsselbeziehungen.
Deshalb setzen wir InnoDB gerne für unsere Projekte ein, beispielsweise für Webapplikationen auf Basis von CakePHP.

Es kann das Problem auftreten, dass sich in einer Datenbank nur MyISAM-Tabellen anlegen lassen, aber keine InnoDB-basierten. Prüft man die verfügbaren Engines im mysql-Prompt mit dem Befehl SHOW ENGINE;, dann erhält man in etwa folgende Ausgabe:

show-engines

Weiterlesen »MySQL: InnoDB-Engine nicht verfügbar