Alguien me puede decir como usar la función mysql_real_escape_string() para evitar que al insertar los valores de un formulario en una db me puedan hacer inyecciones sql.
El codigo que recoge los datos del form es este:
Código PHP:
<?
// Datos de cada equipo que se inscriba.
// Requerimos: Nombre capitán, apellidos, email, movil, numero de apartamento, y color de equipo.
// Tambien pediremos los nombres, apellidos y apartamento de los 9 jugadores restantes que compongan el equipo de futbol
$nombre1 = $_POST['nombre1'];
$apellido0 = $_POST['apellido0'];
$apellido1 = $_POST['apellido1'];
$email = $_POST['email'];
$movil = $_POST['movil'];
$apartamento1 = $_POST['apartamento1'];
$nombre_equipo = $_POST['nombre_equipo'];
$color = $_POST['color'];
$error = '';
// Aqui comprobamos si el usuario ingreso los datos requeridos
if ($nombre1 == ""){
$error.="Debe ingresar el nombre del representante/capitan del equipo. <BR>\n";
}if ($apellido0 == ""){
$error.="No ha ingresado el primer apellido del representante/capitan del equipo. <BR>\n";
}if ($apellido1 == ""){
$error.="No ha ingresado el segundo apellido del representante/capitan del equipo. <BR>\n";
}if
($movil != "") {
if ((!ereg("^[0-9]{9}$", $movil) && $movil!="")||(!ereg("^[0-9]{9}$", $movil) && (strlen($movil) != 9))){
$error.="Ingrese un numero de contacto (movil) valido. <BR>\n";
}
}if ($email == ""){
$error.="No ha ingresado su email. <BR>\n";
}if(ereg("[a-z0-9_.]+@[a-z0-9]+[.][.a-z0-9]+",$email)==0 && $email!=""){
$error.="El email ingresado no es valido. <BR>\n";
}if ($apartamento1 == ""){
$error.="No ha ingresado el apartamento del representante/capitan del equipo. <BR>\n";
}if ($nombre_equipo == ""){
$error.="No ha ingresado el nombre del equipo. <BR>\n";
}
if ($error != ""){
// Este es el archivo que contendra el mensaje de error
include ("err_envio.html");
exit;
}else{
//Ahora incluimos el archivo que insertará los datos en nuestra base de datos
include ("insertar.php");
//Redireccionamos a la pagina de proceso satisfactorio
include ("env_sat.html");
}
?>
Código PHP:
$link = mysql_connect("ddd","ddd","aaaa");
mysql_select_db("eeee",$link);
// Con esta sentencia SQL insertaremos los datos en la base de datos
mysql_query("INSERT INTO futbol (
nombre1,apellido0,apellido1,email,movil,apartamento1,nombre_equipo,color)
VALUES (
'{$_POST['nombre1']}',
'{$_POST['apellido0']}',
'{$_POST['apellido1']}',
'{$_POST['email']}',
'{$_POST['movil']}',
'{$_POST['apartamento1']}',
'{$_POST['nombre_equipo']}',
'{$_POST['color']}',)",$link);
// Ahora comprobaremos que todo ha ido correctamente
$my_error = mysql_error($link);
if(!empty($my_error)) {
echo "Ha habido un error al insertar los valores. $my_error";
} else {
echo "Los datos han sido introducidos satisfactoriamente";
}