Bonjour,
Je souhaite dans mes formulaires, plus particulièrement dans les textarea autorisé le HTML mais interdire le PHP.
Que me conseillez vous? j'ai pensé à simplement supprimer les <? <?php et ?>
Merci pour vos répones.
Bonjour,
Je souhaite dans mes formulaires, plus particulièrement dans les textarea autorisé le HTML mais interdire le PHP.
Que me conseillez vous? j'ai pensé à simplement supprimer les <? <?php et ?>
Merci pour vos répones.
Il existe une fonction strip_tag() qui va supprimer tout le code HTML Et PHP d'un champs.
Je ne connais pas de fonction pour interdire juste le PHP... mais il existe des solutions !
En premier lieu tu peux ajouter la fonction addslashes() sur ton champs qui va empecher l'utilisation des " ou ' pour nuir à ton code source.
Sinon tu peux aussi utiliser la fonction str_replace() pour remplacer <?Php ?> par le texte de ton choix... en l'occurence un champs vide ici
Suffit a priori de rechercher et supprimer les principales éléments qu'on ne retrouve pas dans du html et les supprimer avant de te servir plus en avant de ce que l'user t'a transmis par le formulaire.
etc.
Code : Sélectionner tout - Visualiser dans une fenêtre à part if else <?php ?> while { }
Tu te fais une petite liste et voila.![]()
Bonsoir,
Analyse ce petit bout de code...
Cordialement...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <textarea name="message"> <?php if (isset($_POST['message'])) { $message = $_POST['message']; $message = htmlspecialchars($message); $message = stripslashes($message); $message = strtolower($message); echo $message; } ?> </textarea>
strtolower sur un commentaire, c'est cool mais tu as emmerder les gens qui utilises encore les majuscules.
il me semble que le plus simple pour 99% des usages c'est de faire un circuit de donnée qui ne risque jamais d'être executé et un circuit de code qui ne sera étanche à l'execution du code !
Bonjour,
L’affaire n’étant toujours pas résolue, je m’autorise à rajouter ceci :
Effectivement tu as raison gene69, mais je voulais donner un exemple.
Alors comme dit plus haut pas highdesign (il peut aussi utiliser la fonction str_replace())..
Pour morgan47 il peut remplacer les deux fonctions, comme ceci :
Il suffit de regarder de plus près les fonctions qui remplacent proprement les caractères spéciaux en php.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <textarea name="message"> <?php if (isset($_POST['message'])) { $message = $_POST['message']; $message = htmlspecialchars($message) ; $message = strip_tags($message); \\ ou str_replace (par exemple) echo $message; } ?> </textarea>
http://php.net/manual/fr/function.htmlspecialchars.php
En espérant que cela puisse servir à résoudre le problème à morgan47 et par la même occasion aider d’autre internaute…
Bien cordialement.
Partager