Bueno, en mi página web un amigo mío que sabe de programación me la ha hackeado; es decir, para que aprenda. Y lo que me ha dicho por Skype es lo siguiente:
Cita: Veras, para evisar ataques XSS solo usa strip_tags(), eso lo que hace es eliminar los tags HTML
Usa mysql_real_escape_string() para evitar ataques SQLi
Usa htmlspecialchars() para eliminar las funciones HTML de una variable.
Para determinar las extenciones del formulario de imágenes tienes que determinar el tipo MIME, este es el que te mostrará el tipo de extención a usar.
No entiendo muy bien, os muestro, al subir los datos a PHP de mi formulario de imágenes es el siguiente:
Código PHP:
Ver original$usuario = $_SESSION['usuario']; //Cojo el usuario
$post = $_POST['post']; //Cojo el mensaje
if($_FILES['imagen']['tmp_name'] == NULL){ //Compruebo que hay imagen
mysql_query("INSERT INTO posts(usuario, post, nombre) VALUES('".$usuario."','".$post."','".$nombre."')"); //Si no hay imagen solo sube el texto header("Location: index.php"); //Y vuelve al inicio }else{ //Si hay imagen...
include('conexion.php'); //Me conecto
$ruta = "imagen"; //Selecciono la carpeta
$archivotemporal = $_FILES['imagen']['tmp_name']; //Esto no sé para que es, si me lo podéis explicar me lo decís xddd
$archivo = $_FILES['imagen']['name']; //Esto tampoco, supongo que es la imagen...
$ruta = $ruta."/".$archivo; //Me quedo con la ruta completa
$con=mysql_connect($mysql_host, $mysql_user, $mysql_password); //Me conecto mysql_select_db($mysql_database, $con); //Sigo conectando con la base de datos mysql_query("INSERT INTO posts(usuario, post, nombre, imagen) VALUES('".$usuario."','".$post."','".$nombre."','".$ruta."')"); //Lo subo todo al servidor header("Location: index.php"); //Y vuelve al inicio. }
Lo que quiero, es implementar la seguridad que ha dicho mi amigo en el código, ¿me podrían ayudar?

Muchísimas gracias, como pueden comprobar tampoco sé para que sirven las lineas de:
Código PHP:
Ver original$archivotemporal = $_FILES['imagen']['tmp_name']; //Esto no sé para que es, si me lo podéis explicar me lo decís xddd
$archivo = $_FILES['imagen']['name']; //Esto tampoco, supongo que es la imagen...
Si me podéis ayudar si no es mucha molestia para tan solo una breve descripción os lo agradecería; el manual de PHP no lo suelo entender...