Comment valider une entrée de forme ne contenant que le caractère d'espace (s) en PHP

voix
-2

Good Guys jour Am VALIDATION DE un formulaire pour mon site (toujours sur le serveur local) je l'aide de la plupart w3schools.com Mais je remarquai que ma forme accepte une entrée si l'utilisateur entre 1 ou plusieurs caractères d'espace.

Je sais que la garniture () fonction supprimer l'espace du début et à la fin des données et qui fonctionne bien. Mais je ce que le cas où une entrée utilisateur seulement un ou vide caractère espace la validation php le retourne comme un champ vide.

Merci à l'avance en dessous d'un morceau de mon code

function sanitize($input){
    $input = trim($input);
    $input = stripcslashes($input);
    $input = htmlspecialchars($input);
    return $input;
}
//Full Name Validation
//if field is empty and contains only whitespace
if ($_SERVER[REQUEST_METHOD] == POST){
    if (empty($_POST[fname])){
        $fname_err = Cannot be empty;
    }
}
Créé 20/10/2018 à 03:27
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
0

Vous pouvez utiliser la fonction ctype_space. Il retourne vrai si tous les caractères d'une chaîne créer un espace blanc: http://php.net/manual/en/function.ctype-space.php

Essayez de mettre à jour votre seconde instruction if pour effectuer également la vérification de ctype_space:

//Full Name Validation
//if field is empty and contains only whitespace
if ($_SERVER["REQUEST_METHOD"] == "POST"){
    if (empty($_POST["fname"]) || ctype_space($_POST["fname"])){
        $fname_err = "Cannot be empty";
    }
}

Aussi, pensez à appeler réellement votre fonction aseptiser.

Créé 20/10/2018 à 05:03
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more