Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Filtre HTML [ Base de données / MySQL ] (ldevun)

mercredi 16 août 2006 à 15:34:09 | Filtre HTML

ldevun

Bonjour,
J'ai un filtre HTML que j'ai récupéré sur le forum, mais celui-ci a un probleme, il ne m'affiche pas les "<" des balises exemple :

P>Ca FONT color=#ff0000>marche


P> EM>pas très STRONG>bien


Voici le code du filtre html, merci de votre aide.

$TagIsAllowed = false ;
$CurrentTag = "";
$FilteredText="";
$i=0;
$j=0;

/* On parse le texte */

while($i<strlen($text))
{
    if( ($text{$i} != "<") OR (($text{$i} == "<") && ($text{$i+1}=="/" )     )  ) //on cherche des tags html
    { 
    $FilteredText = $FilteredText . $text{$i}; //si pas de tag html, pas de filtrage
    $j++;
    $i++;
    }
    else
    {
    $i++; //on s'interresse au caractere suivant le <
   
        /* on verife que le tag html utilisé est autorisé */   
     foreach ($tags as $TestTag)
        {
       
         $CurrentTag = substr($text,$i,strlen($TestTag));
       
         if (substr_count($CurrentTag,$TestTag) == 1) //si le tag est autorisé on agit en consequence
         {
         $TagIsAllowed = true ;
         $FilteredText = $FilteredText . ">" . $CurrentTag ;
         $i = $i + strlen($TestTag) ;
         }
       
        }
       
        /* si le tag n'est pas autorisé on efface tout jusqu'à la fin du tag */
        if ($TagIsAllowed = false) 
          {
              while ((substr($text,$i,2)!= "</" )&&($i<strlen($text)))
              {
              $i++;
              }
          }
       
       
    } 
}
 


/*Remplacement des \n par des <br />*/

$FilteredText = preg_replace('/\n/i', '<br />', $FilteredText);

return $FilteredText;
}
?>


mercredi 16 août 2006 à 16:50:54 | Re : Filtre HTML

Evangun

Salut,
sans même lire le code,  je pense que mettre $TagIsAllowed = true; devrait marcher
à+

mercredi 16 août 2006 à 16:55:18 | Re : Filtre HTML

ldevun

Non, ca ne marche pas.

mercredi 16 août 2006 à 16:58:12 | Re : Filtre HTML

Evangun

Alors efface cette partie :
($text{$i} != "<") OR

mercredi 16 août 2006 à 17:01:07 | Re : Filtre HTML

ldevun

Je viens d'essayer mais ca ne marche pas non plus ca.
J'ai cherché mais je ne trouve pas l'erreur pourtant il y en a bien une.


vendredi 18 août 2006 à 13:09:04 | Re : Filtre HTML

psykocrash

if( ($text{$i} != "<") OR (($text{$i} == "<") && ($text{$i+1}=="/" )     )  ) //on cherche des tags html


if( ($text{$i} == "<") OR (($text{$i} == "<") && ($text{$i+1}=="/" )     )  ) //on cherche des tags html

vendredi 18 août 2006 à 14:41:11 | Re : Filtre HTML

ldevun

Bonjour,
Ca ne change rien, il ne m'affiche toujours pas les balises "<"...
Dites moi si vous avez d'autres idées. Merci

vendredi 18 août 2006 à 14:41:57 | Re : Filtre HTML

psykocrash

echo htmlspecialchars($code_html);

vendredi 18 août 2006 à 14:43:59 | Re : Filtre HTML

ldevun

Je le fais ou cet echo? Quel est l'intéret, car je ne comprend pas

vendredi 18 août 2006 à 14:47:21 | Re : Filtre HTML

psykocrash

Si je comprend bien, le visiteur peux écrire mais tu ne veux pas que le html qu'il pourrait mettre soit interprété par le naviguateur, c'est bien ça ? alors tu n'a qu'a utiliser la fonction htmlspecialchars($texte);

Sinon l'erreur pourra peut etre etre réglée si tu fait ça :
if ($text{$i} == "<") //on cherche des tags html


1 2

Cette discussion est classé dans : tag, html, filtre, filteredtext, currenttag


Répondre à ce message

Sujets en rapport avec ce message

[Regex] Remplacer des mots qui se trouvent entre un tag HTML [ par webdeb ] Salut à tous, Je suis bloqué sur une expression régulière que je n'arrive pas à trouver. Et pourtant je cherche depuis pas mal de temps. J'ai développ Filtre de balise HTML dans une textarea [ par keket ] Bonjour, je voudrais mettre en place un filtre qui remplacerais les balises html contenu dans une textarea par une chaine vide. Mais le problème est q convertir txt en html [ par zut69 ] Bonjour,J'ai créé un formulaire qui permet d'envoyer un mail, par contre le problème c est que lorsquej'envoie le mail. Les retours lignes tappés dans Alimentation de zone déroulante [ par ecolom ] Bonjour à tous,j'essaie en vains d'ajouter dans mes zones déroulantes de  ma page html une liste de valeurs qui se trouvent dans une table mysql.Je ne passage de variable html vers php [ par chartoire ] bonjour voila ce que j'essaie de faire ! J'ai un fichier html dans lequel je voudrais appeler un fichier php je dois passer une variable au fichie problémé avec html_entity_decode [ par davidcian ] Bonjour,Voila afin de pouvoir enregister une zone de texte dans ma base de donné mysql j'ai du la convertir en de cette façon:$description_res = htmle Textarea et couleur, font + html [ par dclick07 ] Bonjour!!Le titre l'indique, j'aimerais rajouter un option pour que mes membres puisse ajouter de la couleur changé le font et mettre des photos dans  [HTML] Un tableau [ par Frenzey ] Grace à un script j'affiche le contenu d'une table de ma BD.J'ai donc les résultat qui s'affiche les un après les autre et les un en dessous des autre border, margin... [ par holoduke ] bonjour, j'ai une question sûrement toute bête en html, http://www.endersen.eu/Mug/sub_header.htmlVoilà 3 cases de tableau que je voudrais collées. Vo preview d'une page html [ par Locris ] Bonjour,ayant un template de page HTML, je dois faire un formulaire qui permet de mettre les bonnes informations dans la page HTML calquée sur le temp


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.