Hola amigos, estoy haciendo un sistema de subida de imagenes y me interesaria limitar los archivos subidos, aparte de por tamaño, por alto y ancho.
Tengo hecho el siguiente codigo:
Código PHP:
//Se ha subido un ficherop al servidor distinto de NULL
if ( uplTheFile.PostedFile != null )
{
//Variable para comprobar si hay algun error y para comprobar la extension subida
int control=1,extension_valida=0;
// Se crea un objeto tipo HttpPostedFile
HttpPostedFile archivo_subido = uplTheFile.PostedFile;
//Se obtiene el nombre del fichero subido
string nombre_fichero = archivo_subido.FileName;
//se extrae la extension
int posicion=nombre_fichero.IndexOf(".");
//se guarda la extension del fichero subido
string extension_subida= nombre_fichero.Substring(posicion);
/* Si la extensión del archivo subido no es una permitida da error*/
foreach( string ext_aux in ext_permitidas )
{
if( extension_subida == ext_aux )
{
extension_valida=1;
}
}
//Se comprueban los datos del archivo subido
if( extension_valida == 0 )
{
txtOutput.InnerHtml = "<br><br><br>La extensión seleccionada no coincide con la del fichero";
control=0;
}
else
if( archivo_subido.ContentLength/1024 > 80 )
{
txtOutput.InnerHtml = "<br><br><br>Tamaño excesivo";
control=0;
}
//si ha superado la validacion de tamaño y extension se guarda en la ruta
if( control == 1 )
{
/*Se comprueba si existe un archivo en el servidor para ese id con la extension
que sea y si existe se borra*/
foreach( string ext_aux in ext_permitidas )
{
if( System.IO.File.Exists( file2upload + id + ext_aux) == true )
System.IO.File.Delete( file2upload + id + ext_aux);
}
try
{
uplTheFile.PostedFile.SaveAs(file2upload + id + extension_subida);
Response.Redirect("GestionContenidos.aspx?ruta=" + "<Gestion>\\_boletin\\prueba\\"+ id + extension_subida + "&subida=1");
txtOutput.InnerHtml = "<br><br><br>... Archivo guardado correctamente";
}
catch ( Exception e )
{
txtOutput.InnerHtml = "<br><br><br>... Error guardando!";
}
}
}
Mi pregunta es ¿Se puede acceder al ancho y al alto de la imagen una vez en el servidor? y en caso afirmativo
¿como hacerlo?
Saludos y gracias