Schnippsel-Sammlung

Mit der Zeit sammeln sich diverse Code-Schnippsel, Infos, Links etc. an. Einige davon könnten für andere auch interessant sein und daher liste ich hier mal eine kleine Auswahl auf.

(Kommentare: 2)

Contao 3: Newsletter-Abo mit Sicherheitsabfrage (Captcha)

Offenbar erst in Contao 4 wird das Newsletter-Abonnement (subcribe und unsubscribe) mit einer Captcha-Sicherheitsabfrage (optional) geschützt. Eine bestehendes Contao-3-Projekt absichern ...

Weiterlesen …

(Kommentare: 0)

AdBlocker blockt normale Website-Bilder

Problem: meine Website verkleinert Bilder und rendert die Dateinamen der verkleinerten Bilder in die Seite. Die Dateien mit Formatangaben im Dateinamen wurden leider vom (Firefox) AdBlock ausgeblendet. Doof.

Weiterlesen …

(Kommentare: 13)

Strato und Paypal: IPN kommt nicht an

Problem: Paypal Instant Payment Notififation (IPN) kommt nicht durch bei Strato-Account. Lösung: "Filter gegen Gästebuch-Spam" deaktiviert.

Weiterlesen …

(Kommentare: 2)

Contao: Surf and Edit - Inhalte aus dem Frontend heraus bearbeiten

Manche CMS-Systeme (z.B. Magnolia, Red Dot) bieten zur Pflege der Inhalte alternativ oder ausschließlich das "Surf and Edit"-Prinzip bzw. "Inline Editing" oder "Frontend Editing" an: Ich navigiere durch die Website und kann beim Element, das ich bearbeiten möchte, auf einen Button klicken und es öffnet sich ein Popup oder Fenster, wo ich genau diesen Inhaltsblock bearbeiten kann. Hier eine Idee, wie man so etwas mit Contao im Ansatz machen kann.

Weiterlesen …

(Kommentare: 0)

Selenium-IDE: Lösung für found an old pageLoadError

Selnium-IDE warf nach Upgrade auf 1.6.0 und Firefox 10.0 bei waitForPageToLoad einer Seite mit Facebook-Like-Button Exceptions, die das wait abbrachen. Alle Tests schlugen daher fehl. Hier mein Workaround.

Weiterlesen …

(Kommentare: 1)

CMS-Contao: Deutsche Labels für Slimbox (Lightbox, Bildergalerie)

Bei der slimbox (Lightbox, Bilder-Galerie, Gallery-Modul) von Contao sind die Labels (prev, next, close, Image x of y) standardmäßig auf englisch. Ich möchte sie aber sprachabhängig haben, z.B. auf deutsch - je nachdem, welche Sprache im Frontend gerade aktiv ist.

Weiterlesen …

(Kommentare: 0)

PHP: ini-file-reader

Mit der PHP-Funktion parse_ini_file hatte ich in PHP 5.2 und 5.3 so meine Probleme. Auf Basis eines in der PHP-Online-Doku beschriebenen Tokenizers habe ich mir dann eine eigene Lösung zusammengeschraubt.

Weiterlesen …

(Kommentare: 18)

PHP: ini-Werte überschreiben

Manche Konfigurationswerte in der php.ini können nicht im PHP-Script via ini_set() überschrieben werden. Bei manchen Providern geht es dann in der Datei .htaccess mit php_value, bei anderen wieder über eine eigene php.ini-Datei.

Weiterlesen …

(Kommentare: 0)

SQL, PHP: Datensätze doppelt angelegt

Webseite (PHP) mit Datenbank, einfaches, einmal ausgeführtes insert-SQL-Statement legt Datensätze doppelt an. Komische Sache das...

Weiterlesen …

(Kommentare: 0)

Https: IP-Wechsel-Hack

Kleiner Hack für spezielles Spezialproblem: Ich betreibe eine Website (mit CMS Contao/Typolight), bei der die Seiten für Login etc. via https aufgerufen werden, andere Seiten normal via http. Ich bin korrekt eingeloggt und klicke im Menü auf eine Seite, die mit http aufgerufen wird. Auf dieser Seite bin ich auf einmal ausgeloggt bzw. sind der User und der Login-Status offenbar nicht mehr in der Session gehalten.

Weiterlesen …

(Kommentare: 0)

Cronjob: Externer Aufruf

Manche Provider / Hosting-Partner bieten in ihrem Webspace-/Hosting-Paket keine Cronjobs an. Dafür gibt es externe Provider.

Weiterlesen …

(Kommentare: 2)

PHP: UTF-8, BOM, HTML/CSS-Fehler

Hatte bis eben Probleme bei der HTML-Ausgabe eines selbst geschriebenen Typolight-(Contao-)Moduls: Der Artikel bzw. das Content-Element mit seiner H1-Überschrift im main-Container wurde auf Teufel komm raus um eine Zeile nach unten verschoben. Dachte, ich hätte irgendeine CSS-Eigenschaft, irgendeinen Style übersehen, der noch eine top-margin einbaut oder was, aber das war's nicht. Es war das BOM...

Weiterlesen …

(Kommentare: 2)

Typolight / Contao CMS: Reihenfolge der imports

Lustige PHP-Fehlermeldung "Fatal error: Exception thrown without a stack frame in Unknown on line 0", als ich eine eigene Frontend-Klasse für Typolight (jetzt Contao) schreiben wollte. Lösung: richtige Reihenfolge von import() und contruct()...

Weiterlesen …

(Kommentare: 0)

Typolight / Contao CMS: Paypal IPN und der Referer Check

Typolight bietet als Sicherheitseinstellung an, bei jedem POST-Request einen Referer-Check durchzuführen. Nur wenn der Request von der eigenen Website kommt, wird er akzeptiert, sonst gibt eine Fehlermeldung ("Empty referer address!") und den HTTP-Status 400 (Bad Request). Sofern man diese Einstellung nicht im Backend deaktiviert ("Einstellungen/Referer-Prüfung deaktivieren") oder einen Hack einbaut, kann das Probleme geben z.B. bei der Rückkehr einer Paypal-Bezahlung und bei der IPN (Instant Payment Notification) von Paypal.

Weiterlesen …

(Kommentare: 1)

JPG: Druckgröße (DPI) auslesen mit PHP

Im Web kursieren Code-Teile und Klassen in PHP, mit denen man die Auflösung (Druckauflösung, DPI, dots per inch) aus einer JPEG-Datei lesen kann. Hat leider nicht oft nicht funktioniert. Habe es noch etwas optimiert.

Weiterlesen …

(Kommentare: 0)

PNG: Druckgröße (DPI) abspeichern mit PHP

Die PHP-Funktion imagepng() speichert keine Druckgrößeninformation in der resultierenden PNG-Datei (keine Angabe über Auflösung bzw. Durckgröße in DPI/dots per inch oder cm). Hier eine mögliche Lösung.

Weiterlesen …

(Kommentare: 0)

PNG: Unkomprimiertes Speichern mit PHP

PHP speichert offensichtlich mit der Funktion imagepng($image) ohne weitere Angaben eine PNG-Bild-Datei mit der Kompressions-Stufe 6 (Stufen von 0=verlustfrei bis 9=maximal komprimiert). Die Kompressionsrate kann im 3. Parameter angegeben werden.

Weiterlesen …

(Kommentare: 0)

Typolight CMS: Import-Hack

Problem: Ich würde gerne eine der Typolight-(Contao-)Core-Klassen oder andere Klassen aus Modulen überschreiben bzw. ableiten, um Kleinigkeiten anzupassen, kann ich aber nicht, weil ich nirgendwo definieren kann, dass meine abgeleiteten Klassen herangezogen werden sollen und nicht die Originale.

Weiterlesen …

(Kommentare: 0)

CSS: IE 6 - Falsche Styles (Background-Color)

Skurriles Verhalten beim MSIE 6: Der Internet Explorer 6 rendert bestimmte Style-Eigenschaften von Blöcken einer bestimmten CSS-Klasse falsch, z.B. background-color, border, padding etc. Offenbar hat er Probleme mit der Reihenfolge von mehreren CSS-Klassen-Namen in einer Definition.

Weiterlesen …

(Kommentare: 0)

BMP: Druckgröße (DPI) auslesen mit PHP

Im Web kursieren Code-Teile und Klassen in PHP, mit denen man Bilddateien im Windows-BMP-Format auslesen kann, was ich aber nicht gefunden habe, ist, wie ich an die Druckgröße herankomme (DPI, dots per inch). Hier eine Lösung.

Weiterlesen …

(Kommentare: 0)

PNG: Druckgröße (DPI) auslesen mit PHP

Mit PHP kann man direkt eine PNG-Bild-Datei einlesen, aber man bekommt nur die Pixel und die Größe, aber keine Information über die Druckauflösung (DPI, dots per inch). Man muss noch einmal selbst die PNG-Datei öffnen und die Information auslesen.

Weiterlesen …

(Kommentare: 0)

PHP: PPM-Reader

Einfache PHP-Klasse zum Einlesen von PPM-Bild-Dateien (PNM, PPM, PGM, PBM).

Weiterlesen …

(Kommentare: 0)

Browser-Test: Online-Screenshots

Hurra, tolle Website gefunden: Online Seiten rendern lassen mit verschiedenen Browsern und Screenshot angezeigt bekommen.

Weiterlesen …

(Kommentare: 0)

PHP: Mehrere Versionen auf einem Rechner

Problem: Verschiedene PHP-Versionen bzw. verschiedene Apache-Webserver parallel auf meinem Rechner laufen lassen für unterschiedliche Websites mit unterschiedlichen PHP-Versionen.

Weiterlesen …

(Kommentare: 0)

PHP: Alte PHP-Versionen

Aha, habe gerade gefunden, wo man alte PHP-Versionen finden kann.

Weiterlesen …

(Kommentare: 4)

JS: Sicherheits-Abfrage vor dem Verlassen einer Seite

Wenn man eine Website verlässt - mit einem Formular darauf - möchte man (via JavaScript) gefragt werden, ob man die Seite wirklich verlassen will, denn dann würden ggf. Eingaben in der Eingabemaske verloren gehen.

Weiterlesen …

(Kommentare: 2)

HTTP-Header: PHP, Download, IE + https

Problem: Im MS IE 7 kann man kein Office-Dokument runterladen (mit https/SSL)

Weiterlesen …

(Kommentare: 0)

MS Excel: Auswahl für Eingabefeld einschränken

Ziel, Problem: Ein Eingabe-Feld in MS Excel (2000, 2003) so beschränken, dass nur Werte aus einer Drop-Down-Liste verwendet werden dürfen.

Weiterlesen …