Apostrophe dans un formulaire

Eléphanteau du PHP | 49 Messages

18 janv. 2012, 19:34

Bonjour,

Comment faire en sorte que mon formulaire accepte l’apostrophe (‘) ?
Voici le code de la zone de texte en question :
    
     <input type="text" name="ad_ligne1" value="<?php
 if (isset($_POST['ad_ligne1'])){
 $ad_ligne1 = $_POST['ad_ligne1'];
 $ad_ligne1 = htmlspecialchars($ad_ligne1);
 $ad_ligne1 = stripslashes($ad_ligne1);
 $ad_ligne1 = ucwords (strtolower ($ad_ligne1));
 echo $ad_ligne1;}
?>" />
La partie correction avec PHP :

     elseif (preg_match('`\+[0-9][[:space:]][^A-Za-z_.-][- a-zA-Z]`i', $_POST["ad_ligne1"])){ 
// l'adresse n'est pas valide 
               $erreur="Votre adresse a des caract&egrave;res non autoris&eacute;s..."; 
      }
J’ai essayé avec ( \’) l’antislash puis l’apostrophe, mais ou le placer ?

Meri pour vos conseils,

Cordialement,

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

18 janv. 2012, 20:00

salut,

c'est une ` (alt gr + 7) ou une ' (apostrohe) parce que c'est pas pareil :)

dans tout les cas faut l'ajouter dans l'expression régulière le problème pour le ` c'est que tu l'utilise comme délimiteur de l'expression régulière donc faut le changer.

s'il s'agit d'une ' dans ce cas un simple \' suffit

http://www.expreg.com

@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 49 Messages

18 janv. 2012, 22:24

Bonsoir,
un simple \' suffit
Oui c'est un simple apostrophe que je veux autoriser dans la zone de texte...
Mais ou et comment placer cette commande... dans cette ligne pour éviter les bogues (bug)...
elseif (preg_match('`\+[0-9][[:space:]][^A-Za-z_.-][- a-zA-Z]`i', $_POST["ad_ligne1"])){
Merci pour l'adresse ( http://www.expreg.com )
Beaucoup d'information pour ma pomme ...