IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

chaîne de caractères avec caractères spéciaux [RegEx]


Sujet :

Langage PHP

  1. #1
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut chaîne de caractères avec caractères spéciaux
    Bonjour,

    Je souhaite récupérer une chaine de caractère envoyé par un formulaire.
    Le seul problème est que si cette chaine contenant un ' elle est pas envoyé
    Alors j'ai utilisé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $title = preg_replace("/'/", "’", $title);
    pour mettre en code mais lorsque que je récupère et que je l'affiche il me met des caractères comme ceci : ’

    pourquoi ?
    Il y aurait un moyen de les retirer et de récuperer ma chaine comme elle est au départ ?

  2. #2
    Membre éclairé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Points : 878
    Points
    878
    Par défaut
    preg_replace doit etre utilisé avec des REGEX.

    essais plutot un truc du genre:

    $title = preg_replace("!'!", "’", $title);

    ps: moi aussi jsuis d'angers .

  3. #3
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Ca change rien ca me donne toujours la même chose


    HS : Moi de Belle Beille

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 361
    Points : 15 709
    Points
    15 709
    Par défaut
    tu utilise ce code avec "preg_replace" à quel moment ? à la récupération des données du formulaire ?

  5. #5
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Non pas du tout...

    je fais cette modification avant l'envoi car si je le fait tel quel le ' empeche l'envoi de toute les info

  6. #6
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    Salut, fais-voir un bout de code. Tu réaffiches des valeurs dans un input c'est ça ? Il faut bien mettre des quotes au champ value.

    Bye

  7. #7
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    salut, pourquoi ne pas faire un addslashes sur ta variable $_GET ou $_POST ?
    tu as aussi le mysql_real_escape

  8. #8
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    bon je mets un bout de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $title = preg_replace('/<b>/', "", $recup[0][$j]);
    			$title = preg_replace('/<\/b>/', "", $title);
    			$title = preg_replace("/'/", "’", $title);
    			$url = $recup[1][$j];
    			$template->assign_block_vars('Search.Result', array(
    				'L_titre' => $recup[0][$j],
    				'S_INACTIVE_ACTION' => append_sid("post.$phpEx?rub=$rub&titre=$title")
    				)
    			);
    et donc quand je recupere je fais ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sujet =$HTTP_GET_VARS['titre'];
    et dans le template je mets tout ca dans un input texte

  9. #9
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    oula, tu utilises quelle version de php ?
    utilises plutot $_GET pour récupérer ta variable.

    Autre chose, pourquoi dans ton input, ne met tu pas value=" " au lieu de ' ' ?
    Comme ca ton problème serais réglé direct non ?

  10. #10
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Bon j'ai tout fait autrement...J'ai tout mis dans un input texte que j'envoie à la page la meme page par le form et donc plus besoin de preg_replace et etc...

    je voulais pas en mettre mais bon j'ai personnalisé le input pour qu'on voit pas sa présence et j'ai egalement mis un readonly

    Sinon merci pour vos conseils

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 23/05/2014, 10h40
  2. rechercher dans une chaine de caractère, un caractère avec un tant que
    Par levasseur62 dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 16/01/2011, 17h02
  3. Réponses: 4
    Dernier message: 06/02/2009, 12h10
  4. recupérer GET avec caractères spéciaux
    Par masseur dans le forum Langage
    Réponses: 11
    Dernier message: 03/01/2006, 11h37
  5. Réponses: 3
    Dernier message: 11/10/2004, 17h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo