Funcion PHP para subir imagenes

Bueno, tras un tiempillo sin actualizar, voy a dejaros aquí con una pequeña función para subir imagenes a nuestra web desde un panel de control. La función se llama upload, y solo tendremos que pasarle los siguientes parametros:

$dir -> directorio a donde queremos subir la imagen.
$archivo_temp -> nombre del archivo temporal ($_FILES['fichero']['tmp_name'])
$archivo -> nombre que recibirá el fichero, lo separo porque ami me gusta encriptarlo de antemano, podeis ahcerlo utilizando md5 o sha1, yo ademas le sumo el id que tendrá en la base de datos para evitar duplicidad o sino, dos rand con valores elevados, esto ya a gustos.
$wmax -> ancho maximo de la imagen.
$hmax -> alto maximo de la imagen.

Esta función no redimensiona, imprime un error si la imagen no cumple con los requisitos. Mas adelante os pondré una función mas compleja y que si redimensiona.

Además esta funcion podeis modificarla para subir cualquier otro archivo que no sea imagen.

<?php
ncion para subir archivos
//funcion para subir archivos function upload($dir, $archivo_temp, $archivo, $wmax, $hmax){ //Directorio al que vamos a subir nuestro archivo $subir = $dir.$archivo; //Comprobamos que la imagen tiene el ancho correcto $imagen = getimagesize($archivo_temp); $ancho = $imagen['0']; $alto = $imagen['1']; if($ancho == $wmax && $alto == $hmax){ //Comprobamos que tiene el formato correcto (.jpg) if($imagen['2'] == 2){ //Si todo está correcto, subimos el archivo move_uploaded_file ($archivo_temp, $subir); chmod ($subir, 0777) or die("No se ha podido crear el directorio $subir"); global $up; $up = 'si'; }else{echo "formato no valido.";} }else{echo "tama&ntilde;o no valido.";} } ?>

4 Respuestas a “Funcion PHP para subir imagenes”

  1. Gracias por la función!! la voy a probar…

  2. HogoJp dice:

    Espero que te sirva, si tuvieses algun problema, comentalo y te echo una mano :)

  3. Rafael dice:

    Estimado HogoJp, podrías subir el código fuente completo de este script? lo que yo quiero es hacer una función general que yo pueda llamar desde cualquier parte de mi sitio, es decir, poniendo solamente el input y al enviar “post” guardar el archivo llamando la función. Saludos y gracias.

  4. HogoJp dice:

    Haré algo mejor, te escribiré un nuevo script y lo publicaré en el blog, si tengo tiempo, lo haré este fin de semana :) . Si quieres, puedes comentar alguna idea y así la añado al script.

Deja un comentario