Hello,
AspiGeek a écrit :
... Les hackers sont gentils et cherchent plutôt l'exploit informatique ...
+1
Un petit lien intéressant sur les
hackers.
Est ce que les guillemets magiques sont activés sur ta config php ?
Je te conseille de lire cet
article et de lire ce qui suit attentivement :
* fichier :
rectificationHTTP.php
<?php
// rectification de toutes les superglobales...
function rectificationHTTP(){
if (get_magic_quotes_gpc()) {
$_POST = normalisation($_POST);
$_GET = normalisation($_GET);
$_REQUEST = normalisation($_REQUEST);
$_COOKIE = normalisation($_COOKIE);
}
}
// traitement de chaque superglobales.
//fonction récursive
function normalisation($tableau){
foreach ($tableau as $cle => $valeur)
$tableau[$cle] = (!is_array($valeur))? stripSlashes($valeur) : $tableau[$cle] = NormalisationHTTP($valeur);
return $tableau;
}
?>
* fichier :
rectificationHTTP.php
<?php
require_once("rectificationHTTP.php");
$_POST['clef'] = "Peuf Peuf lui tendit l'oreiller et dit : \" L'oreiller est bien à toi ?\"";
echo $_POST['clef'];
//suppression des magic_quotes ...
rectificationHTTP();
echo $_POST['clef'];
?>
Il est évident que rectificationHTTP() est à factoriser, puisque c'est une fonction récurrente.
jQz a écrit :
Ici, ça ne serait pas plutôt deux signes égales à mettre au lieu de trois ?
J'ai beau être un novice en PHP, mais je n'ai encore jamais vu trois signes égales à la suite.
Les trois signes = existent. On est toujours dans les comparateurs bien sûr et cela veut strictement égale en valeur et type de variable. Il y a également le strict différent.
// integer
$a = 1;
//string
$b = "1";
//comparatif
echo ($a === $b)? "ok" : "ko"; // ko
echo "<br />";
echo ($a !== $b)? "ok" : "ko"; // ok
++
Note à l'admin ou au modérateur : Petit soucis d'édition du code. Pas d'affichage sur les deux premiers scripts si j'utilise la paire de « tags » : "code=php"
Modifié par Nolem (30 Jul 2009 - 16:28)