Hola gente, espero esten bien.
Bueno, voy a tocar el tema de "Inyecciones SQL".
Se muy bien que muchos lo usan para cometer actos que no deben cometerse...
Pero bueno, el caso es.. que si no toco este tema entonces mi web sera muy vulnerable... y la verdad deseo evitar esto...
ASi que suponiendo que yo tenga este sistema de busqueda, tengo dos preguntas:
1- ¿Como es posible hacer una inyeccion sql en ese campo de texto? 2- ¿Como evitar dicha inyeccion? ¿Con el metodo para evitar la inyeccion de la pregunta dos, podria evitarla en todo tipo de codigo?, ya sea login, registro, busqueda, etc? Código HTML:
<form method='post'>
<input type='text' name='producto'>
<input type='submit' name='buscar' value='Buscar Producto'>
</form>
Código PHP:
<?php
require('config.php');
mysqli_select_db($conexion,$productos)or die("Error al seleccionar la DB.");
if(isset($_POST['buscar'])){
extract($_POST);
$consultar_productos = mysqli_query($conexion,"SELECT * FROM productos WHERE nombre='$producto'")or die(mysqli_error($conexion));
$rconsultar_productos = mysqli_num_rows($consultar_productos);
while($linea = mysqli_fetch_array($consultar_productos,MYSQL_ASSOC)){
$nombre = $linea['nombre'];
$precio = $linea['precio'];
$stock = $linea['stock'];
echo $nombre."<br>";
echo $precio."<br>";
echo $stock."<br>";
}
}
?>
Espero me puedan ayudar y muchas gracias de antemano!