Hola:
Tengo este código php para validar los archivos upload (en concreto, imágenes). La cuestión es que valida perfectamente los tipos de archivos, pero me gustaría que validara también el tamaño del archivo, me imagino que para recibir el tamaño sería algo así como:
Código PHP:
$tamano= $_FILES['imagen']['size'];
. ¿cómo haría para validar que no fuera, por ejemplo, mayor de 100kb?, y lo más importante, ¿cómo haría para unirlo al código que ya tengo de manera que si no se cumplen las 2 condiciones (tamaño y tipo de archivo), muestre el mismo error? No sé si me explicado muy bien... a ver si con el código es mejor:
Código PHP:
//comprobamos la imagen y la extension
//array de archivos disponibles
$archivos_disp_ar = array('jpg', 'jpeg', 'gif', 'png', 'tif', 'tiff', 'bmp');
//carpteta donde vamos a guardar la imagen
$carpeta = 'imagen/';
//recibimos el campo de imagen
$imagen = $_FILES['imagen']['tmp_name'];
//guardamos el nombre original de la imagen en una variable
$nombrebre_orig = $_FILES['imagen']['name'];
//el proximo codigo es para ver que extension es la imagen
$array_nombre = explode('.',$nombrebre_orig);
$cuenta_arr_nombre = count($array_nombre);
$extension = strtolower($array_nombre[--$cuenta_arr_nombre]);
//validamos la extension
if(!in_array($extension, $archivos_disp_ar)) $error = "Este tipo de archivo no es permitido"; $error_img = "error";
if(empty($error)){
//creamos nuevo nombre para que tenga nombre unico
$nombre_nuevo = time().'_'.rand(0,100).'.'.$extension;
//nombre nuevo con la carpeta
$nombre_nuevo_con_carpeta = $carpeta.$nombre_nuevo;
//por fin movemos el archivo a la carpeta de imagenes
$mover_archivos = move_uploaded_file($imagen , $nombre_nuevo_con_carpeta);
//de damos permisos 777
chmod($nombre_nuevo_con_carpeta,0777);
// finalmente guardamos todo
mysql_query("INSERT INTO fotos(idusuario,nombre_nuevo_con_carpeta)VALUES('{$idusuario}','{$nombre_nuevo_con_carpeta}')");
Muchas gracias de antemano.