Problème php interprétation html sur serveur
Résolu
Bonjour,
le titre en dit long.
J'ai fait un petit prog' .php pour écrire dans un fichier texte qui est ensuite ouvert sur ma page html
Le prob c'est que si j'écris : <span style="background-color: rgb(255, 255, 255);">
quand je valide ça donne :
<span style=\"background-color: rgb(255, 255, 255);\">
pûis
<span style=\\\\\\\"background-color: rgb(255, 255, 255);\\\\\\\">
Je suis sûr que mon prog .php fonctionne, pour l'avoir testé chez d'autre hébergeurs, sans prob.
Y a t-il un moyen de détourner ce problème svp ?
le titre en dit long.
J'ai fait un petit prog' .php pour écrire dans un fichier texte qui est ensuite ouvert sur ma page html
Le prob c'est que si j'écris : <span style="background-color: rgb(255, 255, 255);">
quand je valide ça donne :
<span style=\"background-color: rgb(255, 255, 255);\">
pûis
<span style=\\\\\\\"background-color: rgb(255, 255, 255);\\\\\\\">
Je suis sûr que mon prog .php fonctionne, pour l'avoir testé chez d'autre hébergeurs, sans prob.
Y a t-il un moyen de détourner ce problème svp ?
4 réponses
-
Salut.
C'est parce que l'option magic_quote_gpc_ est activée.
Elle applique la fonction addslashes sur les variables GET, POST et COOKIES (les entrées de l'utilisateur).
https://www.php.net/manual/fr/security.magicquotes.why.php
https://www.php.net/manual/fr/security.magicquotes.whynot.php
https://www.php.net/manual/fr/security.magicquotes.disabling.php -
Je suis actuellement chez PhpNux
-
petit up
-
100000000 fois merci @avion-f16 !!!
Tu m'as mis sur la voie et ça fonctionne...
Après m'être acharné sur des ".htacess" qui me donnaient l'erreur 500 (internal erreur...contact webmaster...") J'ai lu et re-lu des articles et j'ai ajouté à mon script :
# On n'exécute la boucle que si nécessaire if(get_magic_quotes_gpc() == 1){ # Définition de la fonction récursive. function remove_magic_quotes(&$array) { foreach($array as $key => $val){ # Si c'est un array, recurssion de la fonction, sinon suppression des slashes if(is_array($val)){ remove_magic_quotes($array[$key]); } else if(is_string($val)){ $array[$key] = stripslashes($val); } } } # Appel de la fonction pour chaque variables. # Notes, vous pouvez enlevez celle d'on vous ne vous servez pas. # Personnellement, j'enlève $_REQUEST et $_FILES remove_magic_quotes($_POST); remove_magic_quotes($_GET); remove_magic_quotes($_REQUEST); remove_magic_quotes($_SERVER); remove_magic_quotes($_FILES); remove_magic_quotes($_COOKIE); }
Et ça a l'air de fonctionner au TOP !
J'espère ne pas parler trop vite, je vérifie bien et je reviens pour le "Résolu" officiel :)
+++