Código PHP:
<?
$nombre_archivo = $_FILES['userfile']['name']; //nombre original del archivo
$nombre_archivo2 = $_FILES['userfile2']['name'];
$nombre_archivo3 = $_FILES['userfile3']['name'];
$nombre_archivo4 = $_FILES['userfile4']['name'];
$tipo_archivo = $_FILES['userfile']['type'];
$tamano_archivo = $_FILES['userfile']['size'];
//compruebo si las características del archivo son las que deseo
if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 1000000))) {
echo "La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li></td></tr></table>";
}else{
if (move_uploaded_file($_FILES['userfile']['tmp_name'], "temporal/".$nombre_archivo))
if (move_uploaded_file($_FILES['userfile2']['tmp_name'], "temporal/".$nombre_archivo2))
if (move_uploaded_file($_FILES['userfile3']['tmp_name'], "temporal/".$nombre_archivo3))
if (move_uploaded_file($_FILES['userfile4']['tmp_name'], "temporal/".$nombre_archivo4)){
echo "El archivo ha sido cargado correctamente en"."temporal/".$nombre_archivo;
function thumbjpeg($imagen,$altura) {
// Lugar donde se guardarán los thumbnails respecto a la carpeta donde está la imagen "grande".
$dir_thumb = "thumbs/";
// Prefijo que se añadirá al nombre del thumbnail. Ejemplo: si la imagen grande fuera "imagen1.jpg",
// el thumbnail se llamaría "tn_imagen1.jpg"
$prefijo_thumb = "tn_";
// Aquí tendremos el nombre de la imagen.
$nombre=basename($imagen);
// Aquí la ruta especificada para buscar la imagen.
$camino=dirname($imagen)."/temporal/";
// Intentamos crear el directorio de thumbnails, si no existiera previamente.
if (!file_exists($camino.$dir_thumb))
@mkdir ($camino.$dir_thumb, 0777) or die("No se ha podido crear el directorio ".$camino.$dir_thumb);
// Aquí comprovamos que la imagen que queremos crear no exista previamente
if (!file_exists($camino.$dir_thumb.$prefijo_thumb.$nombre)) {
echo $camino.$dir_thumb.$prefijo_thumb.$nombre." NO existía<br>\n";
$img = @imagecreatefromjpeg($camino.$nombre) or die("No se encuentra la imagen $camino$nombre<br>\n");
// miramos el tamaño de la imagen original...
$datos = getimagesize($camino.$nombre) or die("Problemas con $camino$nombre<br>\n");
// intentamos escalar la imagen original a la medida que nos interesa
$ratio = ($datos[1] / $altura);
$anchura = round($datos[0] / $ratio);
// esta será la nueva imagen reescalada
$thumb = imagecreatetruecolor($anchura,$altura);
// con esta función la reescalamos
imagecopyresampled ($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);
// voilà la salvamos con el nombre y en el lugar que nos interesa.
imagejpeg($thumb,$camino.$dir_thumb.$prefijo_thumb.$nombre);
}
}
thumbjpeg($nombre_archivo, 300);
thumbjpeg($nombre_archivo2, 300);
thumbjpeg($nombre_archivo3, 300);
thumbjpeg($nombre_archivo4, 300);
// una vez creados los thumbnails
//conecto con la bd
$conexion = mysql_connect("localhost","root","") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("inmobiliaria",$conexion) or die("No se puede seleccionar BD"); // tu_bd es el nombre de la Base de datos .. por siaca.
//insertamos los datos en la BD.
$consulta_insertar = "INSERT INTO pisos_venta (id, referencia,fecha,imagen1,imagen2,imagen3,imagen4,descripcion) VALUES ('', '".$_POST['referencia']."','".$_POST['fecha']."','temporal/thumbs/tn_$nombre_archivo','temporal/thumbs/tn_$nombre_archivo2','temporal/thumbs/tn_$nombre_archivo3','temporal/thumbs/tn_$nombre_archivo4','".$_POST['descripcion']."')";
echo $consulta_insertar;
mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos.");
header("location: pisos_alquiler.php?s=1"); // si ha ido todo bien
exit;
}else{
echo "Ocurrió algún error al subir el fichero. No pudo guardarse.";
}
}
?>