[PHP]String sans espace ni caract. spéciaux

Fermé
Paradeyes - 23 avril 2009 à 16:28
 Paradeyes - 23 avril 2009 à 21:08
Bonjour,
Je développe actuellement un outil en php/mySQL et j'ai un petit problème.
L'administrateur de cet outil peut créer un nouveau compte utilisateur par un formulaire tout bête.
Il doit renseigner plusieurs champs, dont un champ "login" et un autre "mot de passe".
Je souhaiterai que pour remplir ces champs, seules les lettres (a-z), les chiffres (0-9), les points (.) et underscore (_) soient autorisés. (pas d'espace autorisé non plus).

Ca fait 3 jours que je me casse la tête dessus mais je ne trouve rien de satisfaisant..
Toute aide serait la bienvenue !

Merci beaucoup.
Cordialement
A voir également:

9 réponses

Ok merci !

Erratum dans mon dernier post :

if($_POST) {
if(preg_match("#[^A-Za-z0-9_\.]#", $_POST['login'])) {
// Erreur format non respecté
} else {
// Inscription Ok
}
}


(javais oublié le tiret "-" entre le "A-Z")
2
empty Messages postés 837 Date d'inscription vendredi 25 juillet 2008 Statut Membre Dernière intervention 23 février 2016 176
23 avril 2009 à 17:11
Par exemple pour le login :

if($_POST) {
if(preg_match("#[^a-z0-9_\.]#", $_POST['login'])) {
// Erreur format non respecté
} else {
// Inscription Ok
}
}

voilà.

Donc si il trouve dans le contenu de la case login (après envoi du formulaire) un caractère différent de a-z 0-9 _ et . il affiche une erreur sinon il valide...
1
Merci ça marche impec !
Une petite modif pour inclure les lettres majuscules :

if($_POST) {
if(preg_match("#[^AZa-z0-9_\.]#", $_POST['login'])) {
// Erreur format non respecté
} else {
// Inscription Ok
}
}


merci encore :)
1
empty Messages postés 837 Date d'inscription vendredi 25 juillet 2008 Statut Membre Dernière intervention 23 février 2016 176
23 avril 2009 à 16:44
Soit tu filtre en directe avec Javascript, soit tu vérifie en PHP avec des REGEX et tu refuse si un autre caractère est entré alors qu'il n'est pas autorisé...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Merci pour votre réponse.

Le but n'est pas nécessairement de contrôler en temps réel la validité de la saisie en javascript.

Je veux juste effectuer un contrôle en php ou javascript lors du click sur le bouton "Enregistrer le nouvel utilisateur", mais je ne trouve pas de fonction simple permettant cette vérification.

Je suis loin d'être un expert en php et je n'arrive pas à adapter les quelques codes que je trouve pr mon application.

Merci de votre aide!
0
empty Messages postés 837 Date d'inscription vendredi 25 juillet 2008 Statut Membre Dernière intervention 23 février 2016 176
23 avril 2009 à 17:14
Maintenant en temps réel c'est peut-être mieux pour ne pas que les utilisateurs aient besoin de changer à chaque fois leurs données parce qu'elles ne sont pas correcte, en javascript il y a moyen d'interdire la saisie de certains caractères en directe, donc plus pratique pour l'utilisateur...
0
Merci bcp pour ton aide !
J'avais effectivement fouiné du coté de preg_match.
Je vais tester tout ça de ce pas.. pour la validation en temps réel effectivement c'est plus pratique pour l'utilisateur... sans abuser de ton temps, tu n'aurais pas un exemple de fonction javascript dont tu me parles ?

Merci bcp !
0
empty Messages postés 837 Date d'inscription vendredi 25 juillet 2008 Statut Membre Dernière intervention 23 février 2016 176
23 avril 2009 à 18:05
essaye toujours le php, je l'ai pas encore testé, j'ai fais ça en direct, il voir si ça fonctionne, après je te ferai le copie d'un code javascript il faudra que je fasse des essais :-)
0
empty Messages postés 837 Date d'inscription vendredi 25 juillet 2008 Statut Membre Dernière intervention 23 février 2016 176
23 avril 2009 à 21:05
Je vais essayer de jeter un oeil pour le Javascript ce soir et je te dis quoi, concernant mon message avec la REGEX (preg_match) clique sur le "+" pour montrer aux autres qui rechercheraient le même résultat que toi que mon message fait partie de ce que tu cherchais :-)

Je te tiens au courant ;-)
0