Ver Mensaje Individual
  #4 (permalink)  
Antiguo 19/06/2013, 08:27
Avatar de iEnrique
iEnrique
 
Fecha de Ingreso: abril-2013
Ubicación: España
Mensajes: 346
Antigüedad: 11 años, 7 meses
Puntos: 5
Respuesta: Hackeo de la web

:O Muchas gracias por ayudarme, bueno lo primero es que una vez se el problema me ayudéis a solucionarlo... Bueno como me habéis pedido os dejo el código que corresponde al sitio donde alojo los mensajes en la base de datos. Tanto el código HTML para contener los datos como el PHP que los envía:

Este primero es el formulario que contiene los datos que quiere enviar el usuario, está en PHP por lo que está en un "echo" pero se comprende bien:
Código PHP:
Ver original
  1. echo "<div class=\"posted\" style=\"width: 375px; margin-bottom:20px;\">
  2.            <form action=\"post.php\" enctype=\"multipart/form-data\" method=\"post\">
  3.                <textarea style=\"width:343px;height:100px;resize: vertical;\" name=\"post\" placeholder=\"Publicar post...\"></textarea><br/>
  4.                 <input type=\"file\" name=\"imagen\" style=\"width:343px;\"/>
  5.                 <img src=\"barra.png\" style=\"margin-left:-15px;\"></img>
  6.                <input type=\"submit\" class=\"green_post\" style=\"width:343px;\"/>
  7.            </form>
  8.            </div>";

Este es el que lo envía también PHP:
Código PHP:
Ver original
  1. /* Aunque parezca dificil no es nada dificil de comprender */
  2.     include('conexion.php');
  3.     session_start();
  4.     if($_SESSION['usuario'] == NULL){ //Veo si existe el usuario
  5.         $desde = $_SERVER['HTTP_REFERER'];
  6.         header ("Location: ".$desde);
  7.     }else{}
  8.     $usuario = $_SESSION['usuario']; //Cojo el usuario
  9.     $post = strip_tags($_REQUEST['post'], "<br><b><i><u>"); //Cojo el mensaje
  10.     if(!isset($post)){ //Veo si existe el mensaje
  11.         $desde = $_SERVER['HTTP_REFERER'];
  12.         header ("Location: ".$desde);
  13.     }else{}
  14.     include('conexion.php'); //Cojo conexión
  15.     $variableConexion = mysql_connect($mysql_host, $mysql_user, $mysql_password);
  16.     mysql_select_db($mysql_database, $variableConexion); //Me conecto
  17.     $sql = "SELECT nombre FROM registros WHERE user='$_SESSION[usuario]'" or die("No se encuentra"); //Cojo todos los datos del usuario
  18.     $consulta = mysql_query($sql,$variableConexion) or die (mysql_error());
  19.     while($rs=mysql_fetch_array($consulta)){
  20.         $nombre = $rs['nombre']; //Cojo el nomre del usuario
  21.     }
  22.    
  23.     $con=mysql_connect($mysql_host, $mysql_user, $mysql_password);
  24.     mysql_select_db($mysql_database, $con); //Me conecto
  25.    
  26.     if($_FILES['imagen']['tmp_name'] == NULL){ //Veo si ha subido una imagen, sino, solo envía el mensaje.
  27.         mysql_query("INSERT INTO posts(usuario, post, nombre) VALUES('".$usuario."','".$post."','".$nombre."')");
  28.         header('Location: index.php');
  29.     }else{ //Si hay...
  30.     include('conexion.php');
  31.     $ruta = "imagen";
  32.     $archivotemporal = $_FILES['imagen']['tmp_name'];
  33.     $archivo = $_FILES['imagen']['name'];
  34.     echo $_FILES['imagen']['type'];
  35.         if($_FILES['imagen']['type'] == "image/png" || $_FILES['imagen']['type'] == "image/jpg" || $_FILES['imagen']['type'] == "image/gif" || $_FILES['imagen']['type'] == "image/bmp" || $_FILES['imagen']['type'] == "image/jpeg"){ //Compruebo que es una imagen.
  36.     move_uploaded_file($archivotemporal, $ruta."/".$archivo);
  37.     $ruta = $ruta."/".$archivo;
  38.     echo $ruta;
  39.    
  40.     $con=mysql_connect($mysql_host, $mysql_user, $mysql_password);
  41.     mysql_select_db($mysql_database, $con);
  42.     mysql_query("INSERT INTO posts(usuario, post, nombre, imagen) VALUES('".$usuario."','".$post."','".$nombre."','".$ruta."')");
  43.     header('Location: index.php'); //Y lo subo todo
  44.         }else{ //Este else es por si el archivo que ha subido no es una imagen...
  45.             mysql_query("INSERT INTO posts(usuario, post, nombre) VALUES('".$usuario."','".$post."','".$nombre."')");
  46.             header('Location: index.php');
  47.         }
  48.     }

Si no se entiende algo me lo decís y os lo explico, muchas gracias por ayudarme. Espero que sepan resolverlo, pedidme todo lo que queráis.