Variable URL - PHP

Fermé
invité - 24 mars 2010 à 18:22
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 - 24 mars 2010 à 20:04
Bonjour,

Voila je voudrais savoir comment on peut faire passé des caracteres comme des ' ou des " dans une variable url sans que sa rajoute a chaque fois devant un \
quand je fais par exemple :
http://127.0.0.1/index.php?variable='

avec comme script php :

<?php

echo $_GET['variable];

?>


Sa me donne comme résultat :
\'

merci,

2 réponses

J'ai mal tapé mon code c'est plutot :
<?php

echo $_GET['variable'];

?>
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
24 mars 2010 à 20:04
C'est l'option magic_quotes qui fait ça : elle applique la fonction addslashes() sur les variables GPC (GET, POST, COOKIES).
Perso je te conseil de toujours la désactiver, car certains hébergeurs l'activent et d'autres pas.

Il y a plusieurs façons pour désactiver cette option.
Par ordre de préférence :

* Ajoute "php_flag magic_quotes_gpc off" (sans les guillemets) dans ton .htaccess
* Ajoute "ini_set ('magic_quotes_gpc', 0);" (toujours sans les guillemets) au début de chaque fichier PHP (ou dans un script inclus dans chaque page)
* Ajoute ce bout de code au début de chaque fichier (ou avec un include) :
function cleanArray(&$arr) {
	foreach($arr as $k => $v) {
		if (is_array($v))
			cleanArray($arr[$k]);
		else
			$arr[$k] = stripslashes($v);
		}
}
if(get_magic_quotes_gpc()) {
	cleanArray($_POST);
	cleanArray($_COOKIE);
	cleanArray($_GET);
}
0