Bonjour,
Dans un formulaire avec un champs texte, je souhaite autoriser les caractères habituels, ainsi que les retours à la ligne.
J'utilise donc une vérification avec le preg_match suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2<label>Texte</label> <textarea id='zonetexte' type="text" name="texte" placeholder="Texte de l'annonce" autocomplete="off" maxlength="<?php echo $longueurmaxannonce; ?>" /></textarea>
Tout semble fonctionner correctement, à l'exception du retour à la ligne qui reste considéré comme interdit malgré le \s
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if (!preg_match('/^[a-z0-9áàâçéèêëïôöùü\s\-\,\!\?\.\;\/\:\%\*\(\)\"\'\&\+\=\°\\£\$\@\_]+$/i', $texte)) { echo 'L\'annonce saisie contient un ou des caractères interdits.';
Ainsi, quand je fais un essai avec un retour à la ligne j'obtiens :
Chose curieuse, quand je teste sur regex101.com, le retour à la ligne est accepté :L'annonce saisie contient un ou des caractères interdits.
https://regex101.com/r/lC5sQ6/4
Je ne comprends pas pourquoi ça ne fonctionne pas sur mon site, et je ne vois pas de solution.
Merci pour votre aide
Partager