Kategorie: PHP

MySQL Charset gerade biegen

Ein Kunde hat eine MySQL-Tabelle, in der alle Felder sauber mit Charset utf8_general_ci angelegt wurden. Leider hat die PHP-Anwendung, die in die Tabelle schreibt, Daten in ISO 8859-1 in die Tabelle geschrieben; was dazu geführt hat, dass die Anwendung die Daten sauber lesen und schreiben konnte, andere Programme aber nicht. Diese gingen nämlich davon aus, […]

Alles lesen - Kategorien: PHP, Software

Arbeiten mit Phar-Archiven

Ich nutze für meine Seiten eine Art selbstgeschriebenes Framework; die selbe Codebase für alle Anwendungen, in der alles enthalten ist, was ich standardmäßig brauche. Session Handling, Anbindungen an Datenbanken, eine kleine Templateengine, etc. Die Anwendungen an sich wurden bei mir bisher immer nur im „app“-Verzeichnis abgelegt. Hatte ich ein Update für eine Seite, habe ich […]

Alles lesen - Kategorie: PHP

PHP: Zugriff auf Adminpanel für Benutzer verhindern

Um zu verhindern, dass nicht-Administratoren auf das Admin-Dashboard zugreifen können, registrieren wir zuerst einen Listener, der triggert, sobald jemand dieses abrufen möchte: add_action(‚admin_init‘, ‚dashboard_for_admins_only‘); Der Code für die Funktion dashboard_for_admins_only sieht wie folgt aus: function dashboard_for_admins_only() { // Trotzdem Zugriff auf Admin-AJAX zulassen if($_SERVER[‚PHP_SELF‘] == ‚admin-ajax.php‘) return; // Administratoren den Zugriff erlauben if(current_user_can(‚manage_options‘)) return; // […]

Alles lesen - Kategorien: PHP, WordPress

PHP: Einen Benutzer einloggen

Möchten wir einen Benutzer einloggen, benötigen wir erst einmal seine ID. Ein Beispiel, wie wir einen Benutzer über seine Email auslesen können: $user = get_user_by(‚email‘, ‚[email protected]‘); Um den Benutzer dann einzuloggen, wenn er erfolgreich aus der Datenbank geladen wurde: if($user) { wp_set_current_user($user->ID, $user->user_login); wp_set_auth_cookie($user->ID); do_action(‚wp_login‘, $user->user_login); }

Alles lesen - Kategorien: PHP, WordPress

PHP: WordPress Passwörter erstellen / validieren

In der wp-includes/pluggable.php finden wir die Funktion wp_hash_password, welche (ohne den Code für die Plugins) wie folgt aussieht $s = new PasswordHash(8, true); echo $s->HashPassword(‚test‘); In selbiger Datei finden wir ebenfalls die Funktion wp_check_password, welche auf folgende Art und Weise Passwörter validiert: $s = new PasswordHash(8, true); $s->CheckPassword(‚test‘, ‚$P$123456789012345678901234567890‘); Der String, der mit „$P$“ anfängt, […]

Alles lesen - Kategorien: PHP, WordPress

tino-ruge.de wird tino-kuptz.de

Im Laufe des Jahres 2024 wird dieser Blog umziehen. Alle Inhalte werden 1:1 weitergeleitet, nix geht verloren. Neue Domain, alter Autor, alter Inhalt.