Remplacer les caractères spéciaux sauf les </

Résolu/Fermé
dypsis66 Messages postés 79 Date d'inscription mardi 2 juin 2009 Statut Membre Dernière intervention 15 janvier 2012 - 18 juin 2009 à 09:50
FlorianWebmastering Messages postés 237 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 19 juin 2009 - 18 juin 2009 à 10:11
Bonjour,
Je récupère le texte écrit dans un formulaire pour les enregistrer sur une base de données, ce texte sera ensuite afficher sur une page web.
Pour que mySQL accepte mon code et pour faire "propre" j'utilise 2 fonctions:
$Contenu_titre= addslashes(htmlentities($_POST['Contenu_titre'], ENT_QUOTES));

Le problème? C'est que je ne peux pas insérer de balise html dans mon texte, car il me les remplaces aussi!
Existe t'ils une fonction PHP qui comme htmlentities remplacerai les caractères spéciaux mais pas les "<", ">" et les "/"????
A voir également:

3 réponses

FlorianWebmastering Messages postés 237 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 19 juin 2009 20
18 juin 2009 à 10:03
Petit rappel: Les fichiers PHP peuvent contenir de l'html !!!
;)
0
dypsis66 Messages postés 79 Date d'inscription mardi 2 juin 2009 Statut Membre Dernière intervention 15 janvier 2012
18 juin 2009 à 10:10
Oui mais quand j'enregistrai mon texte dans la BDD il m'enregistrait aussi les balises de mise en forme, et la fonction htmlentities me les transformaient par leur équivalent.
Alors au lieu de m'afficher: contact,
il m'affichait <b>contact<⁄b> dans ma page web -_-"
Mais c'est bon j'ai trouvé une solution:
$Contenu_titre =str_ireplace(array('<', '>', '&frasl;'), array('<', '>', '/'), $Contenu_titre);

sauf qu'ici il m'affiche les "<> "donc dans le premier array c'est leur équivalent html qui faut mettre...
a rajouter à la suite ^^
0
FlorianWebmastering Messages postés 237 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 19 juin 2009 20
18 juin 2009 à 10:11
Oui ;)
si c'est tout ce que tu cherchais tu peux clore le sujet !
0