MySQL Volltextsuche – Stoppwörter für deutsche Sprache konfigurieren

Die MySQL Volltextsuche ist eine relativ einfache Möglichkeit um eine Datenbanktabelle nach Text zu durchsuchen. Im Gegensatz zur Suche mit LIKE, bietet die MySQL Volltextsuche die Vorteile, dass ein Index erstellt wird und die Suche schneller abläuft. Außerdem werden die Ergebnisse nach Relevanz sortiert zurückgeliefert und einiges an „Filterarbeit“ durch das DBMS erledigt. Diese „Filterarbeit“ […]

Allow Origin Header für mehrere Domains setzen

In einem früheren Artikel habe ich schon einiges über Cross-Domain Zugriffe (CORS) geschrieben. Wenn man z.B. einen Webservice anbieten will, hat man meistens einige Domains, denen man den Zugriff über Ajax auf den Dienst genehmigen will. Bei einer Domain setzt man folgenden Header in PHP: header('Access-Control-Allow-Origin: http://www.anfragendedomain1.de'); Man kann als zweiten Parameter angeben, ob der […]

Gibt es Backlinks zu einer Seite auf Wikipedia?

Vor allem für die Suchmaschinenoptimierung ist es interessant, ob bei Wikipedia Links auf eine bestimmte Seite gesetzt werden. Die Wikipedia-API bietet viele Möglichkeiten um den Inhalt von Wikipedia-Seiten automatisiert auszuwerten. Mit folgender PHP Funktion kann man diese sogenannten Backlinks einer URL auf Wikipedia finden. function get_wikipedia_backlinks($url, $language="en") { $url = preg_replace("(^https?://)", "", $url); $wiki_url = […]

PHP Script zeitgesteuert unter Windows mit dem Aufgabenplaner ausführen

Wahrscheinlich kommt es in der Praxis oft nicht vor, da man bei Linux Cron-Jobs für eine zeitgesteuerte Ausführung eines Programms nutzt, aber ich will dennoch zeigen, wie man zeitgesteuert ein PHP-Programm unter Windows mit dem Aufgabenplaner (Scheduler) ausführen lassen kann. Folgende Ordnerstruktur habe ich angelegt. Die Aufteilung in zwei Dateien wähle ich aus Demogründenden – […]

CSS Grid Layout

… oder wollen wir lieber sagen: ASCII Art Layout? Es wird Zeit sich mit einem neuen Layoutmodul auseinanderzusetzen. Lange Zeit waren Floats das Mittel der Wahl für Layouts von Webseiten. Dann kam Flexbox, das aber auch nur partiell Lösungen z.B. für eine Navigationsleiste bietet, da es sich um eine eindimensionales Layoutsystem handelt (eine Zeile oder […]

Liste von PHP Bibliotheken

Folgende Liste von PHP Bibliotheken bzw. Modulen habe ich mit der Zeit zusammengestellt, die einen guten Eindruck machen. Ich habe dabei darauf geschaut, wie sie gepflegt werden, wie verbreitet sie sind und wie die Dokumentation aussieht. Die Liste ist bestimmt nicht vollständig und erhebt auch keinen Anspruch darauf. Assets Assetic https://github.com/kriswallsmith/assetic Bildgrößen ändern / Thumbnail […]

file_get_contents über Proxy

Die PHP Funktion file_get_contents ist praktisch. Mit ihr kann man Inhalt von diversen Datenquellen – nicht nur Dateien – einlesen um sie danach weiter zu verarbeiten. Man kann der Funktion bspw. auch eine URL übergeben. Leider funktioniert das nicht hinter einem Proxy. Hier hilft ein Streamcontext. $aContext = array( 'http' => array( 'proxy' => 'tcp://PROXYIP:PROXYPORT', […]

Vagrant unter Windows

Im Bereich der Webentwicklung sterben lokale Webserverpakete wie XAMPP mit der Zeit immer weiter aus. Der Grund liegt neben der schlechten Austauschbarkeit von XAMPP-Komponenten darin, dass die Systemumgebung des Entwicklungsrechners natürlich nicht exakt mit dem Produktivsystem übereinstimmt und somit Probleme bei der Plattformunabhängigkeit von Programmaufrufen auftreten können. Ein Beispiel sei strftime() in PHP. Im Hintergrund […]

Url mit Anker nach Element mit id oder Link mit name-Attribut anzeigen

Mit folgendem JQuery Plugin wird beim Überfahren eines Element der volle Link – ergänzt um den Hash des Ankers – angezeigt. Man kennt das aus langen Onepagern, bei denen die Überschriften mit einer id oder dem Element <a name=“ankername“> versehen sind. Dadurch kann der Benutzer direkt zu einer Überschrift verlinken und vor allem auch sehen, […]

Event Handler für noch nicht existierende Elemente in JQuery

s kommt manchmal vor, dass man ein Element mit Jquery einfügt und einen Eventhandler dafür registrieren will. Ab JQuery 1.7+ geht das mit der on() Methode. Für Elemente die noch nicht existieren muss man den Event-Delegation Ansatz der Methode on() nutzen. Der normale direkte Aufruf sieht wie folgt aus (und funktioniert nicht für Elemente, die […]