He tenido problemas de seguridad com mi web y le he pasado el programa Acunetix Web Vulnerability Scanner 4 para ver las causas y ha econtrado varias cosas que he ido solucionando.
Tengo una duda. Tengo una consulta al BD:
Código:
$consulta = "SELECT * from contingut WHERE id = $id ";
$res = mysql_query($consulta) or die ("No s'ha pogut fer la consulta");
y me dice que le codigo es vulnerable a inyecciones SQL. En cambio si les pongo comilla simples a la variable $id se soluciona el problema.
Código:
$consulta = "SELECT * from contingut WHERE id = '$id'";
$res = mysql_query($consulta) or die ("No s'ha pogut fer la consulta");
Alguine podría explicarme el por que?
Seguramente tiene una explicación muy simple y de primero de PHP pero yo no veo la diferencia.