Espace dans un fomulaire

Par Bloomingsakura, il y a 8 ans


Les bases HTML/CSS

Bonjour j'aimerai savoir comment retirer les espaces d'un formulaire. C'est a dire que si quelqu'un met uniquement des espaces dans la case du formulaire j'aimerai qu'il y ai un message d'erreur . Merci

8 réponses

Bloomingsakura, il y a 8 ans

Ca ne marche pas ...
Je voulais le poster ici parce que je ne savais pas quel langage utiliser .. php ou javascript ..

Balsakup, il y a 8 ans

Salut,

if (empty(trim($_POST['posted_field'], ' '))) { // TODO: Gestion du message d'erreur }
keulu, il y a 8 ans

tu as la méthode trim() qui sert a nétoyer des espaces par défault (mais pas que). et tu as ses copines aussi ltrim() et rtrim()

Balsakup, il y a 8 ans

Si tu le fais en JS, faut aussi le faire en PHP. Le JS ça se désactive.

TokaLazy, il y a 8 ans

Salut,

L'exemple de @nicop ne marchera pas, il manque les parenthèses de la condition. De plus il ne vérifie que les lettres de l'alphabet. Pas pratique du tout.

Pareil pour l'exemple de @Blackomodo, beaucoup trop restrictive.

Si tu veux faire une vérification coté Js c'est simplement pour éviter une requette au serveur, c'est donc toujours bien. Mais comme le précise @Balsakup, il te faudra dans tout les cas faire un check coté back.

Ensuite il faut que tu sois plus précis dans ta demande.
Est-ce que c'est pour envoyer la data sur ta base de données ou pour affiché à l'utilisateur.

En tout cas la réponse de @keulu - utiliser trim() - est la bonne solution.

<?php $firstname = ''; if (isset($_POST['firstname'])) { $firstname = trim($_POST['firstname']); } require_once('form.html'); <!-- form.html --> <input type="text" name="firstname" id="firstname" value="<?= $firstname ?>">
Kamar-Meddah, il y a 8 ans

soit la methode trim qui enleve les espece de coté soit les expressions régulières

TokaLazy, il y a 8 ans

du coup si c'est pour les espaces a l'interieur de ton string il faut effectivement un replace grace a une regex.

PHP: $str = preg_replace('/\s+/gi', '_', $value_of_input);
JS : var str = value_of_input.replace(/\s+/gi, '_');

Huggy, il y a 8 ans

Pour ceux qui ont des espèces dans leur string, je leur conseille de consulter :-)