Vérifcation de champs(php)
Fermé
Garth
-
18 févr. 2012 à 20:57
AssassinTourist Messages postés 5710 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 - 20 févr. 2012 à 20:48
AssassinTourist Messages postés 5710 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 - 20 févr. 2012 à 20:48
A voir également:
- Vérifcation de champs(php)
- Easy php - Télécharger - Divers Web & Internet
- Word mettre à jour tous les champs - Forum Word
- Générique champs elysées john miles - Forum Musique / Radio / Clip
- Word : Mise à jour des champs - Forum Word
- Afficher champs de tableau croisé dynamique - Guide
4 réponses
mimigenie
Messages postés
1180
Date d'inscription
dimanche 3 janvier 2010
Statut
Membre
Dernière intervention
4 août 2018
313
18 févr. 2012 à 21:38
18 févr. 2012 à 21:38
A mon avis tu n'as pas cherché avec les bons mots-clef ;)
Mais voila de quoi t'aiguiller : https://forum.hardware.fr/hfr/Programmation/php-verifier-alphanumerique-sujet_14031_1.htm
Mais ce code utilisant une fonction obsolète si tu utilises php 5.3, tu dois utiliser preg_match à la place.
Il te suffit de modifier légèrement le code pour qu'il prenne en compte l'underscore.
Mais voila de quoi t'aiguiller : https://forum.hardware.fr/hfr/Programmation/php-verifier-alphanumerique-sujet_14031_1.htm
Mais ce code utilisant une fonction obsolète si tu utilises php 5.3, tu dois utiliser preg_match à la place.
Il te suffit de modifier légèrement le code pour qu'il prenne en compte l'underscore.
Merci de ta réponse,
Oui en effet ereg est obsolète à partir de php 5.3, ça m'as bloqué
(ce qui n'est pas le cas du serveur que je veut utiliser et obsolète/depreciated veut pas dire que ça marchera pas; mais bon on sait jamais, je préfères avoir le code au mieux sur ce genre de trucs tout bêtes...)
Bon tant pis pour le mal de crâne du dév qui se la joue vin rouge en fin de journée de codage et toujours devant son php:
Donc avec preg_match
Je vais tester de ce pas, et trinquer à ta santé mimi
edit: j'ai du rater un truc parce que quand
$mavaleur="tr1546#%} éXz.#uc bid_*ule";
J'ai droit à "Glop!"
Oui en effet ereg est obsolète à partir de php 5.3, ça m'as bloqué
(ce qui n'est pas le cas du serveur que je veut utiliser et obsolète/depreciated veut pas dire que ça marchera pas; mais bon on sait jamais, je préfères avoir le code au mieux sur ce genre de trucs tout bêtes...)
Bon tant pis pour le mal de crâne du dév qui se la joue vin rouge en fin de journée de codage et toujours devant son php:
Donc avec preg_match
$mavaleur=$_POST['machin']; $pattern = '/_a-z0-9/i'; /* Le "i" après le délimiteur du pattern indique que la recherche ne sera pas sensible à la casse*/ if(!preg_match($pattern, $mavaleur)){ echo "Glop!"; }else{ echo "Pas Glop!!!"; };
Je vais tester de ce pas, et trinquer à ta santé mimi
edit: j'ai du rater un truc parce que quand
$mavaleur="tr1546#%} éXz.#uc bid_*ule";
J'ai droit à "Glop!"
mimigenie
Messages postés
1180
Date d'inscription
dimanche 3 janvier 2010
Statut
Membre
Dernière intervention
4 août 2018
313
18 févr. 2012 à 22:17
18 févr. 2012 à 22:17
Et si tu rajoutes des crochets pour avoir $pattern = '/[_a-z0-9]/i'; ?
Perso je n'ai jamais réussi à utiliser cette fonction correctement ^^
Perso je n'ai jamais réussi à utiliser cette fonction correctement ^^
Pareil avec les crochets,
Perso je n'ai jamais réussi à utiliser cette fonction correctement ^^
On sera 2 au moins alors...
Bon je ferait ça quand le reste sera terminé, quitte à découper mes chaînes pour tester les caractères 1 par un et vérifier s'ils sont des chiffres ou des lettres uniquement:s.
Perso je n'ai jamais réussi à utiliser cette fonction correctement ^^
On sera 2 au moins alors...
Bon je ferait ça quand le reste sera terminé, quitte à découper mes chaînes pour tester les caractères 1 par un et vérifier s'ils sont des chiffres ou des lettres uniquement:s.
AssassinTourist
Messages postés
5710
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 311
20 févr. 2012 à 10:56
20 févr. 2012 à 10:56
Bonjour,
Essayez de faire petit à petit. Déjà, est-ce que ça marche avec ça :
(donc sans _, et sans s'occuper de la casse pour l'instant)
Essayez de faire petit à petit. Déjà, est-ce que ça marche avec ça :
$pattern = '[a-zA-Z0-9]';
(donc sans _, et sans s'occuper de la casse pour l'instant)
Merci à toi aussi Assassin Tourist,
Avec ceci $pattern = '[a-zA-Z0-9]';
J'ai Glop! uniquement si la valeur testée contient "a-zA-Z0-9"(sans autre caractère intercalé entre, autour ça fonctionnes tant qu'il y a a-zA-Z0-9 sans rien intercalé ), preg_match() vérifie si l'expression existe dans la chaîne testée. Cela ne convient pas pour tester si il n'y a bien que des lettres, chiffres, et pas de caractères spéciaux.
Avec ceci $pattern = '[a-zA-Z0-9]';
J'ai Glop! uniquement si la valeur testée contient "a-zA-Z0-9"(sans autre caractère intercalé entre, autour ça fonctionnes tant qu'il y a a-zA-Z0-9 sans rien intercalé ), preg_match() vérifie si l'expression existe dans la chaîne testée. Cela ne convient pas pour tester si il n'y a bien que des lettres, chiffres, et pas de caractères spéciaux.
AssassinTourist
Messages postés
5710
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 311
20 févr. 2012 à 20:48
20 févr. 2012 à 20:48
Je proposais de faire petit à petit ;p
Essaye en rajoutant le _ et voir si ça fonctionne avec un _ quelque part.
$pattern = '[a-zA-Z0-9_]';
Essaye en rajoutant le _ et voir si ça fonctionne avec un _ quelque part.
$pattern = '[a-zA-Z0-9_]';