Input + strlen problem

  • Tag,


    war eine lange zeit nicht aktiv mit Php und wollte mal wieder reinkommen. Hab jetzt grad 2 Probleme die mich verwirren.


    1. Bei Filter_input muss man ja eine Variable reinschreiben wie Input_filter(input_post, 'variable', filter_sanitize_string);
    Was bewirkt die Variable ?


    2. Wollte mal ganz einfach kurz ein Script das ein Datensatz einfügt. Es ist ganz einfach und soll jetzt nix mit sicherheit oder so erstmals zun haben. Es sagt mir nur "Name zu kurz" und das die ganze zeit.


    Zitat
  • Ohne den Namen wüsste die Funktion doch nicht was sie verarbeiten soll. Sonst müsstest du ja so vorgehen:


    PHP
    $email = $_POST['email'];
    // Filtern


    Bei strlen vergleichst du in den falschen Klammern:


    PHP
    // Falsch
    if(strlen($vorname > 36))
    // Korrekt
    if(strlen($vorname) > 36)
  • Wieso zeigt er mir, obwohl ich die email richtig schreibe 'email fail'?


    Zitat
  • Zeile 10

    PHP
    if(!filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
                        $error = 'email fail';
                    }


    Wenn ! (NICHT) filter_var(...) === false


    Doppelte Verneinung :D


    Würde aber empfehlen:

    PHP
    $emailFiltered = filter_var($email, FILTER_VALIDATE_EMAIL);
    if ($emailFiltered=== false or $emailFiltered !== $email) {
        $error = 'email fail';
    }

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!