| | | | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer | Das Testen auf Sonderzeichen kannst du ebenfalls per eregi oder ähnliches machen. IMHO müssten dort im PHP- Manual sogar Beispiele zu genau diesem Zweck sein. Zur anderen Frage: Wenn du Funktionen nicht magst, gebe dich mit deinem Code zufrieden...
__________________ www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih |
| |
| | |
| Erfahrener Benutzer Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse: Fortgeschritten ![]() | Hi "Nana23". Ein paar Anmerkungen, die dir vielleicht weiterhelfen: 1. Auf alle externen Vars via $_POST etc. zugreifen Ich vermute $nick_uebergeben und $action kommen auch aus dem Formular, oder? In jedem Fall zum Entwickeln register_globals auf off setzen und ggf. dennoch auch für Systeme programmieren, bei denen register_globals an ist. Wenn du das error_reporting-Level (auch in der php.ini) hochsetzt, ist das schon fast die ganze Miete. 2. if ($foo != '') -> if (!empty($foo)) Gerade bei externen Vars bekommst du sonst eine Meldung, dass auf den Wert eines nicht existierenden Arrayfeldes zugegriffen wird, wenn die entsprechende Variable nicht übergeben wurde. Natürlich nur, wenn du die Meldungen nicht unterdrückst (siehe eben error_reporting in der php.ini) 3. SELECT * FROM Immer nur die Felder auslesen, die du auch wirklich brauchst. Siehe http://php-faq.de/. 4. $nick_uebergeben, $sql_user_doppelt etc. Leg dich doch mal auf EINE Sprache fest *g 5. Abfrage auf Dubletten Erstmal schau dir mal die Funktion mysql_num_rows() an. Dann hast du so natürlich eine Race Condition. D.h., es kann sein, dass Benutzer A in seinem Skriptaufruf prüft, ob der Nick "Paul" noch zu haben ist und dort ein okay bekommt, sich dann Benutzer B als "Paul" registriert und dann Benutzer A sein "Paul" in die Datenbank klopfen will. Du musst also in jedem Fall den Benutzernamen in der Datenbank einmalig machen (...hat ja wahrscheinlich eh den primary_key, ansonsten Attribut UNIQUE setzen). 6. Reihenfolge der Queries Du musst natürlich erst den Benutzer in die DB bringen und dann erst kannst du die Benutzerzahl updaten. Ich würde hier auch direkt auf die Benutzertabelle zugreifen und alle Benutzer zählen und den Wert nehmen - das ist weniger fehleranfällig und bei einer Neuregistrierung (bzw. auch Löschung eines Benutzerkontos) kann man ja ruhig diese paar Zehntel länger warten... 7. Injections Bevor du externe Vars in deine Datenbank-Queries aufnimmst, musst du sicherstellen, dass diese "sauber" sind! Also entweder legst du als Systemanforderung fest, dass PHP mit magic_quotes_gpc = on konfiguriert ist, oder (was die flexiblere Variante ist) du prüfst diesen Wert im Skript und reagierst entsprechend. Siehe auch in der dclp-faq (http://php-faq.de/ ). Die Doppelkreuze (#) sind kein Problem -> siehe SQL (z.B. MySQL-Doku). 8. Passwörter verschlüsseln In die Datenbank kommen Prüfsummen, nicht die Passwörter im Klartext - es sei denn, du kannst das für dein spezielles Projekt irgendwie rechtfertigen. md5() ist dein Freund *g 9. E-Mail-Validierung Gääähn! Vergiss deine Abfrage und blätter auch hier in der dclp-faq. Und, BTW verwende, wenn es keinen speziellen Grund gibt, nicht die POSIX-Regexs (ereg etc.), sondern die PCREs (preg etc.). 10. Formularfehler abfangen Mach ich meistens etwa so: PHP-Code: |
| |
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Formular schickt keine Email | alfonsodiecko | PHP Tipps 2008 | 2 | 10.05.2008 20:19 |
| Email aus Formular kontrollieren will nicht so recht... | PHP Tipps 2006 | 7 | 24.05.2006 15:57 | |
| Email Formular funzt net | thomson | PHP Tipps 2006 | 25 | 03.04.2006 12:59 |
| Formular an 2 Email adressen senden | PHP Tipps 2006 | 7 | 07.01.2006 17:54 | |
| Subject in Email Formular | PHP Tipps 2005-2 | 1 | 10.09.2005 12:58 | |
| Bild per email über Formular versenden | PHP Tipps 2005-2 | 8 | 30.07.2005 14:46 | |
| Email Formular | Beitragsarchiv | 11 | 14.04.2005 08:41 | |
| Html Formular per email | PHP Tipps 2005 | 1 | 30.03.2005 17:17 | |
| Formular an meine Email adresse senden | 'progman' | PHP Tipps 2005 | 1 | 01.03.2005 19:43 |
| PHP Email Formular mit einem bzw. mehreren Anähngen | PHP-Fortgeschrittene | 1 | 11.12.2004 22:34 | |
| Wie implementiere ich mein Email Formular? | PHP Tipps 2004-2 | 2 | 14.11.2004 17:02 | |
| GB Email check | PHP Tipps 2004 | 53 | 27.10.2004 16:55 | |
| Suche eMail Formular in PHP | Beitragsarchiv | 2 | 12.10.2004 16:24 | |
| email formular: Name wird nicht übergeben | PHP Tipps 2004 | 3 | 19.06.2004 13:36 | |
| formular und email | PHP Tipps 2004 | 5 | 18.06.2004 21:29 | |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.