set_magic_quotes_runtime déprécié pour php 5.3 et plus;
489 hit(s)](enregistré le 23/03/2011) Classement dans 'Informatique-programation'/'' , Regrouppement sur 'php'

fwrite rajoute des antislaches mais fread ne les enlève pas!

 

 

avant la php5.3 je faisais

set_magic_quotes_runtime(true); //garde les "

fwrite($fd,$buffer);

 

Depuis la version 5.3 rien ne va plus

 

if (phpVersSupEgal(5.3)){

/*ini_set("magic_quotes_gpc", 0);

ini_set("magic_quotes_runtime", 0);

ini_set("magic_quotes_sybase",0); */

$nb=strlen($buffer) ;

fwrite($fd,$buffer,$nb); //voila la solution

 

} else {

//debug("

set_magic_quotes_runtime(true); //garde les " //marche en 5.2

fwrite($fd,$buffer);

}

 

Cela sne fait rien car sur l'hébergement php

ini_set("magic_quotes_gpc", 0); ne marche pas alors que cela marche pour les autres ??? (ticket support)

 

La solution est dans la doc php pour la fonction fwrite : "Note that if the length argument is given, then the magic_quotes_runtime configuration option will be ignored and no slashes will be stripped from string"

 

donc en faisant

fwrite($fd,$buffer,5000); cela marche.  pour fwrite.

 

Par contre au retour d'un formulaire il faut faire (comme dans ls_edite_file) :

if (get_magic_quotes_gpc()) {

$_POST["texte"]=stripslashes($_POST["texte"]);//enleve les ajouté au post.

}

 

 

en fait