Je soumets des données de recherche sur une page personnalisée searchi.php
<?php
//
$search_variables = $_GET['s']. '+' .$_GET['cat'];
//This sends http post to url without curl
header("Status: 301 Moved Permanently");
header("Location:http://localhost/wordpress/?s=$search_variables");
exit;
?>
Je sais que wp_query
désinfecte les variables pour moi, donc je ne devrais pas m'en inquiéter. Mais il vaut mieux demander que d’être désolé, y at-il un moyen de compromettre la sécurité?
J'ai remarqué l'écho de la variable $search_variables
avec <div></div>
inséré dans les travaux de recherche, alors dois-je faire quelque chose à ce sujet?
Non, WordPress désinfecte la requête de recherche.
Pour utiliser la requête de recherche désinfectée, utilisez the_search_query()
pour répercuter, ou get_search_query()
pour renvoyer la requête de recherche.
Basé sur votre modification:
$_GET['s']
. Utilisez get_search_query()
.$_GET['cat']
. Utilisez get_the_category()
.$_GET
et $_POST
doivent être supposées intrinsèquement dangereuses, et doivent être vérifiées/validées en conséquence.