-2
J'ai un problème avec la fonction strip_tags
de PHP. J'ai une liste qui inclut une liste blanche pour les balises html. Cette liste est générée à partir d'une fonction comme:Je ne peux pas utiliser la fonction strip_tags de PHP avec une autre fonction
setAllowedHtmlTags();
et de sortie pour cette fonction est:
"<a><table><br>"
Je veux éliminer les autres balises html, mais cela. Par conséquent, j'utilise la fonction de strip_tags comme suit:
echo strip_tags("sample text", setAllowedHtmlTags());
Et voici ma fonction:
function setAllowedHtmlTags()
{
$db = new PDO('mysql:host=' . host . ';dbname=' . DBNAME_SCHEMA, user, password);
$sql = "SELECT html_tag FROM allowed_html_tags_table";
$query = $db->query($sql);
$tagList = "";
if ($query->rowCount()){
foreach($query as $row){
$tagList .= $row['html_tag'];
}
}
return htmlentities($tagList);
}
Mais cela ne fonctionne pas. strip_tags
fonction supprime toutes les balises html, y compris les mines dans ma liste blanche. Pouvez-vous s'il vous plaît m'aider à résoudre ce problème? Est-ce que votre fonction setAllowedHtmlTags()
renvoie vraiment ce que vous nous avez dit?
Ajoutez le code de la 'fonction setAllowedHtmlTags' – Dekel
[semble fonctionner comme prévu] (https://3v4l.org/RvojD) –
Pas vraiment important, mais pourquoi voudriez-vous utiliser une fonction juste pour revenir' »
"', pourquoi ne pas configurer un 'const' ou quelque chose. – Pitchinnate
Répondre
Essayez un
var_dump(setAllowedHtmlTags());
pour voir ce que la fonction renvoie vraiment.Ou peut-être que vous vouliez appeler g etAllowedHtmlTags()?
Source
2016-12-28 15:41:52 saitho
Oui, il retourne exactement la chaîne que je m'attendais. –
Ok, j'ai trouvé le problème, renvoyant la valeur avec la fonction html_entity_decode() à la place la fonction htmlentities() a fonctionné pour moi.
Source
2016-12-30 09:04:31
Questions connexes