
Este simple script sube los archivos que le indiqueis, además de crear una miniatura de la misma imagen, con las dimensiones que vosotros le pongais.
Los parámetros que podeis configurar son:
- Nombre para la imagen original
- Nombre para la imagen miniatura
- Tamaño de la imagen miniatura
- Carpeta para la imagen original
- Carpeta para la imagen miniatura
- Personalizar vuestro formulario con lo que querais
Pues ala, aquí lo teneis:
Código PHP:
===========================================
UPLOAD.ASPX
===========================================
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Imaging" %>
<html>
<script language="VB" runat="server">
Sub EnviaFormulario(Sender as Object, E as EventArgs)
' Definimos el archivo enviado por el formulario como Imagen
Dim Imagen as System.Drawing.Image
Imagen = System.Drawing.Image.FromStream(Archivo.PostedFile.InputStream)
' Definimos las dimensiones de la miniatura
Dim AnchoMiniatura as Integer, AltoMiniatura as Integer
AnchoMiniatura = Integer.Parse(Ancho.Value)
AltoMiniatura = Integer.Parse(Alto.Value)
' Definimos el nombre del archivo, y el nombre de la miniatura
Dim NombreArchivo as String, NombreMiniatura as String
NombreArchivo = "FotoGrande.jpg"
NombreMiniatura = "FotoPequena.jpg"
' Definimos las rutas donde grabará los archivos
Dim RutaArchivo as String, RutaMiniatura as String
RutaArchivo = "./"
RutaMiniatura = "./"
' Guardamos el archivo original en disco
Imagen.Save(Server.MapPath(RutaArchivo & NombreArchivo), ImageFormat.JPEG)
' Creamos la Miniatura con las dimensiones enviadas, y la definimos como Imagen
Dim Miniatura as System.Drawing.Image
Miniatura = Imagen.GetThumbnailImage(AnchoMiniatura, AltoMiniatura, Nothing, New IntPtr())
' Grabamos la Miniatura en disco con formato JPG
Miniatura.Save(Server.MapPath(RutaMiniatura & NombreMiniatura), ImageFormat.JPEG)
' Redirigimos la página hacia la imagen
Response.Redirect("upload.aspx")
End Sub
</script>
<body>
<form enctype="multipart/form-data" runat="server">
Imagen: <input id="Archivo" type="file" runat="server">
<br><br>
Ancho: <input id="Ancho" type="text" size="3" value="100" runat="server">
Alto : <input id="Alto" type="text" size="3" value="100" runat="server">
<input value="Enviar" type="submit" OnServerClick="EnviaFormulario" runat="server">
</form>
</body>
</html>
Bueno, espero que le sirva de algo a alguien.
Por último, una petición a alguien que domine más aspx que yo (no será dificil, la verdad xDD):
El tema es que he conseguido hacer el upload + miniaturas gracias a varios códigos que he ido mirando y tal, pero necesito conseguir hacer que el formulario esté en un archivo html, y que mediante POST envíe el serchivo y las dimensiones a un archivo *.aspx. A ver si alguien sabe la forma de conseguirlo, porque yo despues de 4354543653 horas, aún no lo he logrado

Ala, un saludo

.