par
AB » 09 janv. 2008, 21:29
Merci pour ta réponse, mais c'est pas plutôt il supprime les slashes (stripslashes) ?
guigui69
Oui, sa langue à fourché
C'est bien ce que réalise cette ligne :
Si get_magic_quotes_gpc() est activé, le serveur va mettre des slashes (si nécessaire) dans toutes les variables $_GET, $_POST, $_COOKIE (d'où l'appellation gpc). Pour les supprimer uniquement si get_magic_quotes_gpc() est activé et afin d'obtenir la valeur originale de la variable ont utilise donc la fonction stripslashes();
if(get_magic_quotes_gpc()) $value = stripslashes($value);
J'ai donc créer la petite fonction stripgpc (j'aurai pu l'appeler 'carambar' ) qui contient cette ligne et retourne la valeur de la variable envoyée à la fonction, débarrassée des éventuels slashes au cas où get_magic..gpc() est activé
function stripgpc($value) {
if(get_magic_quotes_gpc()) $value = stripslashes($value);
return $value;
}
Pour traiter chaque variable avec ma fonction stripgpc(), je fais donc :
$login = isset($_POST['identifiant']) ? stripgpc($_POST['identifiant']) : '';
//md5 uniquement si les mots de passe sont codés en md5 dans la base de donnée
$mdp = isset($_POST['mot_de_passe']) ? md5(stripgpc($_POST['mot_de_passe'])) : '';
Cette manière de faire à l'avantage de donner les bons résultats sur n'importe quel serveur, quelque soit sa configuration.
C'est ensuite la fonction mysql_real_escape_string() qui servira pour protéger les variables dans la requête.
[quote="guigui69"]Merci pour ta réponse, mais c'est pas plutôt il supprime les slashes (stripslashes) ?
guigui69[/quote]
Oui, sa langue à fourché :wink:
C'est bien ce que réalise cette ligne :
Si get_magic_quotes_gpc() est activé, le serveur va mettre des slashes (si nécessaire) dans toutes les variables $_GET, $_POST, $_COOKIE (d'où l'appellation gpc). Pour les supprimer uniquement si get_magic_quotes_gpc() est activé et afin d'obtenir la valeur originale de la variable ont utilise donc la fonction stripslashes();
[php]if(get_magic_quotes_gpc()) $value = stripslashes($value);[/php]
J'ai donc créer la petite fonction stripgpc (j'aurai pu l'appeler 'carambar' ) qui contient cette ligne et retourne la valeur de la variable envoyée à la fonction, débarrassée des éventuels slashes au cas où get_magic..gpc() est activé
[php]function stripgpc($value) {
if(get_magic_quotes_gpc()) $value = stripslashes($value);
return $value;
} [/php]
Pour traiter chaque variable avec ma fonction stripgpc(), je fais donc :
[php]$login = isset($_POST['identifiant']) ? stripgpc($_POST['identifiant']) : '';
//md5 uniquement si les mots de passe sont codés en md5 dans la base de donnée
$mdp = isset($_POST['mot_de_passe']) ? md5(stripgpc($_POST['mot_de_passe'])) : '';
[/php]
Cette manière de faire à l'avantage de donner les bons résultats sur n'importe quel serveur, quelque soit sa configuration.
C'est ensuite la fonction mysql_real_escape_string() qui servira pour protéger les variables dans la requête.