PHP : Valider NOM PRÉNOM avec accent exp rég
Résolu/Fermé
katarina999
Messages postés
68
Date d'inscription
dimanche 30 janvier 2011
Statut
Membre
Dernière intervention
28 avril 2015
-
Modifié par katarina999 le 11/09/2011 à 12:19
ktm620enduro Messages postés 293 Date d'inscription mardi 21 septembre 2010 Statut Membre Dernière intervention 12 mars 2013 - 12 mars 2013 à 09:25
ktm620enduro Messages postés 293 Date d'inscription mardi 21 septembre 2010 Statut Membre Dernière intervention 12 mars 2013 - 12 mars 2013 à 09:25
A voir également:
- Regex prenom
- Easy php - Télécharger - Divers Web & Internet
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
- Href php ✓ - Forum PHP
- Bouton php - Forum PHP
- Echo image php ✓ - Forum PHP
4 réponses
ktm620enduro
Messages postés
293
Date d'inscription
mardi 21 septembre 2010
Statut
Membre
Dernière intervention
12 mars 2013
38
20 sept. 2011 à 23:25
20 sept. 2011 à 23:25
tu peux pas mettre le blanck a imbriqué ainsi
katarina999
Messages postés
68
Date d'inscription
dimanche 30 janvier 2011
Statut
Membre
Dernière intervention
28 avril 2015
17 sept. 2011 à 10:32
17 sept. 2011 à 10:32
Voici mon code, qui pourrait trouver le bug qui s'y cache ?
Et voici le formulaire qui est dans un fichier form.php
Ce code fonctionnait pour un formulaire qui entrait le données reçues dans une BDD. Mais cette fois-ci, mon code ne valide plus les accents, pourtant il ne s'agit d'un copier coller de mon ancien code !
Merci d'avance !
<?php if (isset($_POST['envoyer'])) { //VARIABLE //initialise la variable de messages d'erreurs à vide $msg = ''; //nom $nom = ucfirst($_POST["nom"]); //regex pour le nom if(preg_match("/^([a-zA-Z'àâéèêôùûçÀÂÉÈÔÙÛÇ[:blank:]-]{1,75})$/", $nom)) $regex_nom = true; else $regex_nom = false; //ERREURS //si données manquantes if (empty($nom) or empty($prenom)) { $msg .= 'Remplir le form. <br />'; } //si le nom n'est pas valide if ((!empty($nom)) and ($regex_nom == false)) $msg .= 'Nom invalide <br />'; if (empty($msg)) { echo 'Nom : '.$nom.'<br />'; } else { echo $msg; include('form.php'); } } else { include('form.php'); } ?>
Et voici le formulaire qui est dans un fichier form.php
<form method="post" action=""> <p>Nom * : <input name="nom" size="30" maxlength="40" /></p> <p><input type="submit" value="Envoyer" name="envoyer"</p> </form>
Ce code fonctionnait pour un formulaire qui entrait le données reçues dans une BDD. Mais cette fois-ci, mon code ne valide plus les accents, pourtant il ne s'agit d'un copier coller de mon ancien code !
Merci d'avance !
ktm620enduro
Messages postés
293
Date d'inscription
mardi 21 septembre 2010
Statut
Membre
Dernière intervention
12 mars 2013
38
12 mars 2013 à 09:25
12 mars 2013 à 09:25
le charset est-il toujous le meme... ça serait un classique.
Bonjour,
Le test effectué fonctionne pourtant très bien :
Bien entendu, le prénom Anaïs ne satisfait pas le masque car le ï n'est pas pris en compte dans le masque ainsi que le ë de Noël et le ü de Güdrun (minuscules et capitales).
Le test effectué fonctionne pourtant très bien :
<?php //$nom = 'Hervé'; //$nom = 'Gérard'; //$nom = 'René'; //$nom = 'Anaïs'; //$nom = 'Noël'; //$nom = 'Güdrun'; $nom = 'Jean louis'; if(preg_match("/^([a-zA-Z'àâéèêôùûçÀÂÉÈÔÙÛÇ[:blank:]-]{1,75})$/", $nom)) echo "$nom satisfait le masque"; else echo "$nom ne satisfait pas le masque"; ?>
Bien entendu, le prénom Anaïs ne satisfait pas le masque car le ï n'est pas pris en compte dans le masque ainsi que le ë de Noël et le ü de Güdrun (minuscules et capitales).
katarina999
Messages postés
68
Date d'inscription
dimanche 30 janvier 2011
Statut
Membre
Dernière intervention
28 avril 2015
17 sept. 2011 à 09:53
17 sept. 2011 à 09:53
Tout d'abord merci de m'avoir répondu.
Bizarrement, ça ne fonctionne plus de mon côté, je vais réessayer.
Aurais-tu une autre expression qui ferait la même chose ?
Merci !
Katarina999.
Bizarrement, ça ne fonctionne plus de mon côté, je vais réessayer.
Aurais-tu une autre expression qui ferait la même chose ?
Merci !
Katarina999.
1 oct. 2011 à 22:33
3 oct. 2011 à 04:32
Mon fichier en utf8:
Johan
4 oct. 2011 à 08:48
Je vais faire le test et je te dirai si cela marche avec mon formulaire.
10 avril 2012 à 16:28
Comme tu l'avais dit, mon encodage était UTF-8. Je l'ai donc passé en iso-8859-1 et tout fonctionne.
Cependant, j'ai souvent ce genre de problème lorsque je code en PHP. Je ne sais pas s'il faut être en UTF-8 ou en iso-8859-1. Que me conseillerais-tu ?
Merci.