E Seguro fazer consultas mysql usando valores de cookie?
Primeiramente uso o PHP 5.4;
Função: Estou fazendo uma página de histórico, toda vez que um visitante acessa uma determinada página seu id fica salvo no cookie, que por sua vez quando o usuário acessa a página de histórico esses ids são lidos pelo mysql e exibi todos os resultados.
Minha duvida: e seguro usar o código desta forma, ou e necessário fazer alterações, vale lembrar que o mysql so irá consultar números, cujo são especificados, porem usuários de ma fé podem modificá-los para fazer um sql injection por exemplo, porem so será lido números no mysql. devido ao uso da função is_numeric, alguem poderia analizar e me dizer oque fazer pra deixa-la segura, caso não esteja?
Alguém poderia me informar se é seguro ou se há algo mais para deixar seguro?
Código:
$id = $_COOKIE["id"]; //Nome do cookie
$novoId = "$cont[id]"; // Novo id, value exemplo "1,2,3,4" adiciona novo valor apos virgula
if (!preg_match("/\b{$novoId}\b/", $id)) {
setcookie("id", $id .= "{$novoId},");
}
$historico = explode(",", $id);
$histanime = array_filter($historico, function($value) {
/* Retorna apenas os números inteiros */
return is_numeric($value);
});
if(($quantidade = count($histanime)) > 30){
$histanime = array_slice($histanime, $quantidade - 30, 30);
}
$ids5 = implode(",", $histanime) ;
e a consulta no *mysql* e feita com um *while*:
$cont = mysql_query("SELECT title,titulo2,url,imagen FROM `lista` WHERE aid IN($ids5)");while (list($title, $titulo2, $url, $Imagen) = mysql_fetch_array($cont))
Discussão (1)
Carregando comentários...