Je soupçonne fortement magicquote... [Résolu]

davidcian 186 Messages postés vendredi 18 novembre 2005Date d'inscription 19 décembre 2009 Dernière intervention - 25 mars 2009 à 16:49 - Dernière réponse : jreaux62 206 Messages postés vendredi 13 juin 2008Date d'inscription 24 octobre 2011 Dernière intervention
- 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
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
jreaux62 206 Messages postés vendredi 13 juin 2008Date d'inscription 24 octobre 2011 Dernière intervention - 26 mars 2009 à 11:06
3
Merci
// 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

Merci jreaux62 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 69 internautes ce mois-ci

Commenter la réponse de jreaux62
cs_putch 624 Messages postés mardi 6 mai 2003Date d'inscription 14 décembre 2009 Dernière intervention - 25 mars 2009 à 17:17
0
Merci
salut

et si tu mettais justement le traitement php ?

++
Commenter la réponse de cs_putch
davidcian 186 Messages postés vendredi 18 novembre 2005Date d'inscription 19 décembre 2009 Dernière intervention - 25 mars 2009 à 19:03
0
Merci
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
Commenter la réponse de davidcian
kohntark 3708 Messages postés lundi 5 juillet 2004Date d'inscription 27 avril 2012 Dernière intervention - 25 mars 2009 à 20:34
0
Merci
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 -
Commenter la réponse de kohntark
jreaux62 206 Messages postés vendredi 13 juin 2008Date d'inscription 24 octobre 2011 Dernière intervention - 26 mars 2009 à 10:57
0
Merci
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 ."......." ;
Commenter la réponse de jreaux62
cs_putch 624 Messages postés mardi 6 mai 2003Date d'inscription 14 décembre 2009 Dernière intervention - 26 mars 2009 à 16:07
0
Merci
on dit merci [../auteur/JREAUX62/1418388.aspx jreaux62]...
Commenter la réponse de cs_putch
davidcian 186 Messages postés vendredi 18 novembre 2005Date d'inscription 19 décembre 2009 Dernière intervention - 26 mars 2009 à 16:18
0
Merci
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
Commenter la réponse de davidcian
jreaux62 206 Messages postés vendredi 13 juin 2008Date d'inscription 24 octobre 2011 Dernière intervention - 29 mars 2009 à 06:15
0
Merci
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)
Commenter la réponse de jreaux62

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.