Je soupçonne fortement magicquote...

Résolu
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 - 25 mars 2009 à 16:49
jreaux62 Messages postés 195 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 24 octobre 2011 - 29 mars 2009 à 06:15
Bonjour,


voila dans un textarea j'utilise un éditeur de texte html pour la mis en forme il mache super il est légé c'est genial!!


Mais lors de la récupération je pense que magicquote doit mettre le souk....


J'envoie ça dans un textarea par post:





test 
gras 
italique 
vert







Et je récupère cette horreur après post....





test 
gras 
italique 
vert





Je soupçonne fortement magicquote... Mais pas sur!


merci de votre aide


Az

8 réponses

jreaux62 Messages postés 195 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 24 octobre 2011 32
26 mars 2009 à 11:06
// fonction de SUPPRESSION des caracteres accentues
function noaccent($chaine) {
   $avecaccent =  
      "ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝ
       àáâãäåçèéêëìíîïðòóôõöùúûüýÿ";
   $sansaccent = 
      "AAAAAACEEEEIIIIOOOOOUUUUY
       aaaaaaceeeeiiiioooooouuuuyy";
   $noaccent = strtr($chaine, $avecaccent, $sansaccent);
   return $noaccent;
}

OU
// fonction de REMPLACEMENT des caracteres accentues
// par leur Code HTML (ou iso, ...)
function noaccent($chaine) {
   $arrayavecaccent  = ("À","Á","Â","...........");
   $arraysansaccent =  (" À ","Á","Â","...........");
   $noaccent  = strtr($chaine, $arrayavecaccent, $arraysansaccent);
   return $noaccent;
}

A adapter ...

Les caractères spéciaux (code ISO, code html, ...) : http://www.commentcamarche.net/contents/html/htmlcarac.php3
3
cs_putch Messages postés 624 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 14 décembre 2009 1
25 mars 2009 à 17:17
salut

et si tu mettais justement le traitement php ?

++
0
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 1
25 mars 2009 à 19:03
J'ai trouvé entre temps:

        $texte_centre_3 = stripslashes($_POST['nl_txt3']);
        $texte_centre_3 = str_replace("é","é",$texte_centre_3);
        $texte_centre_3 = str_replace("è","è",$texte_centre_3);
        $texte_centre_3 = str_replace("à","à",$texte_centre_3);
        $texte_centre_3 = str_replace("â","â",$texte_centre_3);
        $texte_centre_3 = str_replace("€","€",$texte_centre_3);
        $texte_centre_3 = str_replace("ç","ç",$texte_centre_3);
        $texte_centre_3 = str_replace("ê","ê",$texte_centre_3);
        $texte_centre_3 = str_replace("ô","ô",$texte_centre_3);
        $texte_centre_3 = str_replace("î","î",$texte_centre_3);
        $texte_centre_3 = str_replace("²","²",$texte_centre_3);  
        $texte_centre_3 = utf8_decode($texte_centre_3);

Mais bon c'est moche.... Y a pas moyen de faire plus beau?

Az
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
25 mars 2009 à 20:34
Salut Davidcian,

Oui, il y a sans doute moyen de faire bien plus beau et surtout plus rapide.
Mais comme le dis Putch il serait intéressant d'avoir ton code.

Cordialement,

Kohntark -
0

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

Posez votre question
jreaux62 Messages postés 195 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 24 octobre 2011 32
26 mars 2009 à 10:57
Bonjour,
il existe des fonctions de remplacement des caracteres accentues (en cherchant un peu), mais le probleme ne vient pas de là :
ce sont effectivement les " qui sont mal interpretes au moment de la requete
(c'est pour ca que ton "bout de code" aurait ete d'une bonne aide : aide-toi ...)

avec une requete du genre :
SQL = " ........". $donnees ."......." ;
Si $donnees contient aussi des ", ca ne va pas fonctionner correctement....

Oublie magicquote et essaye :
$donnees = str_replace('"','""',$donnees);
SQL = " ........". $donnees ."......." ;
0
cs_putch Messages postés 624 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 14 décembre 2009 1
26 mars 2009 à 16:07
on dit merci [../auteur/JREAUX62/1418388.aspx jreaux62]...
0
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 1
26 mars 2009 à 16:18
merci!!

Pour info j'ai adapté comme ca:

        $tableau_orignie = array('é','è','à','â','€','ç','ê','ô','î','²','ë','û','ö','°','&');
        $tableau_remplace = array('é','è','à','â','€','ç','ê','ô','î','²','ë','û','ö','º','&','&');
       
        $texte_centre_1 = str_replace($tableau_orignie,$tableau_remplace,$_POST['nl_txt1']);  
        $texte_centre_1 = utf8_decode($texte_centre_1);
       
        $titre_centre_1 = str_replace($tableau_orignie,$tableau_remplace,$_POST['nl_txt1_titre']);  
        $titre_centre_1 = utf8_decode($titre_centre_1);

Puis j'ai rajouté ca pour désactivé le magicquote sur toute mes variable transmise:

    if (get_magic_quotes_gpc()) {
        foreach($_POST as $i=>$var) $_POST[$i]=stripslashes($var);
        foreach($_GET as $i=>$var) $_GET[$i]=stripslashes($var);
    }

Az
0
jreaux62 Messages postés 195 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 24 octobre 2011 32
29 mars 2009 à 06:15
BN : pour etre precis, le titre de la 1ere fonction est :
// fonction de SUPPRESSION des accents
ou
// fonction de REMPLACEMENT des caracteres accebtues par ceux non-accentues

(on ne supprime pas les caracteres (!), mais on les remplace par ceux non-accentues)
0
Rejoignez-nous