Foros del Web » Programando para Internet » ASP Clásico »

Subir múltiples imagenes a multiples carpetas

Estas en el tema de Subir múltiples imagenes a multiples carpetas en el foro de ASP Clásico en Foros del Web. Hola a todos! tengu un problema a la hora de insertar imagenes multiples con xupload, el siguiente codigo que les muestro es el que utilizo ...
  #1 (permalink)  
Antiguo 04/06/2008, 08:52
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 17 años
Puntos: 1
Subir múltiples imagenes a multiples carpetas

Hola a todos!


tengu un problema a la hora de insertar imagenes multiples con xupload, el siguiente codigo que les muestro es el que utilizo en mi pagina.
El tema esta esque mi página trata de lugares, recibo de una variable de session el carpeta del lugar seleccionado.Hasta aqui todo bien, pero a mayores dentro de la carpeta tengo otras dos subcarpetas(100x100 y 200x200) donde me interesa redimensionar las imagenes esas dimensiones(100x100 y 200x200).El codigo me guarda las imagenes en la carpeta del lugar, pero no se como hacer para que a mayores me las guarde tambien el las otras dos pero ya redimensionadas.



Cita:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
'Cojo el nombre de carpeta que guardo correctamente en una pagina anterior
carpeta = Session("carpetasubida")
response.write ""&carpeta&""
'El siguiente código es para el XUPLOAD de persits, que se complementa con el de más abajo (dentro de body)
'creo la variable donde meto la direccion donde quiero subir el conjunto de imagenes.

'Este código es el que hace subir las imagenes al servidor.
if request("act") = "up" then
carpeta = Session("carpetasubida")

%>
<OBJECT RUNAT=Server ID=Upload PROGID="Persits.Upload.1"></OBJECT>
<%
'Mediante la variable "directorio" le digo donde quiero subir las imagenes. Una vez hecho mostramos un mensaje con el nª de fotografias subidas.
nCount = Upload.Save(server.MapPath("/lugares/"&carpeta))%><%response.end

'--------------------------------------
'****AQUI ES DONDE DEBERIA IR LA PARTE DE CÓDIGO QUE ME FALTA****
'---------------------------------------

end if
%>

<html>
<head>
<title>subir conjunto de fotografias</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body link="#333333" vlink="#333333" alink="#333333" leftmargin="0" topmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0">
<table width="622" border="0" align="center" cellpadding="0" cellspacing="4">
<tr>
<td width="593" height="28"> <div align="center"><FONT class=textov1><strong><FONT color="#CC3300" class=textov1>Subir
</FONT><FONT color="#CC3300" class=textov1> fotograf&iacute;as al servidor(En construccion, no tocar).</FONT><br>
</strong></FONT></div></td>
</tr>
<tr>
<td><div align="center">
<!--CREAMOS LOS BOTONES DE AGREGAR IMAGENES-->
<SCRIPT LANGUAGE="VBScript">
Sub Select_OnClick
UploadCtl.Select
End Sub

Sub SelectFolder_OnClick
UploadCtl.SelectFolder
End Sub

Sub Remove_OnClick
UploadCtl.RemoveHighlighted
End Sub

Sub RemoveAll_OnClick
UploadCtl.RemoveAll
End Sub
Sub Upload_OnClick
UploadCtl.RemoveAllFormItems
UploadCtl.Upload
End Sub
</SCRIPT>
<!--creamos el activeX (XUPLOAD de PERSITS)para agregar imagenes. -->
<br>
<br>
<INPUT TYPE="BUTTON" class="button" NAME="SELECT" VALUE="Seleccionar imagen">
<INPUT TYPE="BUTTON" class="button" NAME="SELECTFOLDER" VALUE="Seleccionar carpeta">
<INPUT TYPE="BUTTON" class="button" NAME="REMOVE" VALUE="Borrar">
<INPUT TYPE="BUTTON" class="button" NAME="REMOVEALL" VALUE="Borrar todo">
<INPUT TYPE="BUTTON" class="button" NAME="UPLOAD" VALUE="UPLOAD" onpress="return upload(this)">
</div></td>
</tr>
</table>
<object width="620" height="200" id="UploadCtl" classid="clsid:e87f6c8e-16c0-11d3-bef7-009027438003" codebase="XUpload.ocx">
<param name="Server" value="<% = Request.ServerVariables("SERVER_NAME") %>">
<param name="Script" value="<% = Request.ServerVariables("SCRIPT_NAME") %>?act=up">
</object>
</body>
</html>


eSPERO QUE ALGUIEN PUEDA AYUDARME, O SI TIENE UN CÓDIGO QUE HAGA ALGO SIMILAR si pusiese mostrarlo se lo agradeceria!



gracias de antemano.
  #2 (permalink)  
Antiguo 04/06/2008, 09:49
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 1 mes
Puntos: 88
Respuesta: Subir múltiples imagenes a multiples carpetas

guardas todo dentro de la session(carpeta)??

y como sabras la dimension de dicho item??
Cita:
if File.ImageWidth = 100 and File.ImageHeight = 100 then
carpeta de 100x100
elseif File.ImageWidth = 200 and File.ImageHeight = 200 then
carpeta de 100x100
elseif File.ImageWidth = ??? and File.ImageHeight = ??? then
carpeta de ??x??
.
.
.
end if
realizas esto antes de aplicar el metodo SAVE, podras enviar las fotos como mencionas

es eso lo que intentas? o estoy desvariando?
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #3 (permalink)  
Antiguo 05/06/2008, 01:26
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 17 años
Puntos: 1
Respuesta: Subir múltiples imagenes a multiples carpetas

Muchas gracias Shiryu_Libra:

Quizas no me explique bien:
En primer lugar mi pagina tiene lugares y las fotos de cada lugar las guardo en carpetas, ej: pirineos, sierra morena, ...
Desde administracion creo lugares, que me crea una carpeta con el nombre del lugar y dentro de esta otras dos(100x100 y 200x200).
Cuando voy a meterle fotos al lugar guardo en la session("carpeta") el nombre del lugar(que tambien tiene la carpeta), de la forma que mostre el código aqui si me guarda las imagenes, el problema es que no se como hacer para que a mayores tambien me guarde las imagenes redimensionadas por mi desde código seleccionadas en las otras dos carpetas(100x100 y 200x200) dentro del lugar seleccionado (session("carpeta"))


Espero haberme explicado mejor.
  #4 (permalink)  
Antiguo 05/06/2008, 08:16
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Subir múltiples imagenes a multiples carpetas

JuanRAPerez Traslator: (jajajajja comentario offtopic)

el problema es:
+ sube una imagen (con el componente XUPLOAD de persits)
+ la guarda en una carpeta con el nombre del lugar (/lugares/CasaDePiedra)
+ dentro de el lugar CasaDePiedra el crea dos carpetas las de 100 y las de 200
+ el desea saber como guardar la foto que subio a esas carpetas con esas dimensiones (creo que las de 100 y 200 son sus "thumbnails"


mi comentario:
has llegado hasta crear la carpeta y subir la imagen (tal y como esta en tu pc con las dimensiones originales de la foto) y has creado las dos carpetas 100x100 y 200x200

Opción 1
si usas un componente de pago como lo es XUPLOAD; y si tienes la capacidad de pago de un componente mas compra este http://www.aspjpeg.com/

este componente te permitirá hacer los "thumbnails" (http://www.aspjpeg.com/manual_02.html) de el tamaño que lo desees.

cuando haces el proceso de salvar (Jpeg.Save) le indicas de acuerdo a las dimensiones de la imagen el lugar donde debe guardar la foto de 100 de ancho y la de 200

si tu foto original mide 3 megas puedes redimensaionarla y borrar esa de 3 o 5 megas (la original) para que no utilice espacio e mas en tu server.

Opción 2
hay un aspx (no lo he encontrado en mi maquina para pasartelo) que esta en las faq, o en las funciones, que redimensiona las imagenes es gratis solo trabaja con el GDI de Microsoft.

Redimensionas la imagen y ahi mismo le dices que el resultado te lo deje en el folder de 100 o de 200 dependiendo de el proceso en el que estes


lee este post
http://www.forosdelweb.com/f15/redim...nentes-399226/

y has la busqueda en el foro

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
  #5 (permalink)  
Antiguo 05/06/2008, 08:36
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 17 años
Puntos: 1
Respuesta: Subir múltiples imagenes a multiples carpetas

Muchas Gracias JuanRAPerez esa es la idea jeje


Ahora suponiendo que esten redimensionadas, como hago para que me las guarde en las tres carpetas?

Cita:
%>
<OBJECT RUNAT=Server ID=Upload PROGID="Persits.Upload.1"></OBJECT>
<%
'Mediante la variable "directorio" le digo donde quiero subir las imagenes. Una vez hecho mostramos un mensaje con el nª de fotografias subidas.
nCount = Upload.Save(server.MapPath("/lugares/"&carpeta))%><%response.end

'--------------------------------------
'****AQUI ES DONDE DEBERIA IR LA PARTE DE CÓDIGO QUE ME FALTA****
'---------------------------------------

end if
%>
como pongo lo que falta para que me las guarde en las otras dos carpetas tambien.

Probe con algo asi, y me daba error:



Cita:
%>
<OBJECT RUNAT=Server ID=Upload PROGID="Persits.Upload.1"></OBJECT>
<%
'Mediante la variable "directorio" le digo donde quiero subir las imagenes. Una vez hecho mostramos un mensaje con el nª de fotografias subidas.
nCount = Upload.Save(server.MapPath("/lugares/"&carpeta))%><%response.end

'--------------------------------------
'****AQUI ES DONDE DEBERIA IR LA PARTE DE CÓDIGO QUE ME FALTA****
'---------------------------------------

nCount = Upload.Save(server.MapPath("/lugares/"&carpeta&"/100x100"))%><%response.end

nCount = Upload.Save(server.MapPath("/lugares/"&carpeta&"/200x200"))%><%response.end

end if
%>



Ayuda!Gracias
  #6 (permalink)  
Antiguo 05/06/2008, 09:16
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: Subir múltiples imagenes a multiples carpetas

el uso de response.end termina la ejecución de el codigo eso quiere decir que lo que sigue despues de un response.end ya no se ejecuta asi que quita los response.end que estan de mas.

si ya la tienes redimensionada la pregunta es la redimensionas en el server (despues de subirla) o ya la subes redimensionada al server????


en todo caso si la redimensionas en el server, ahi es donde tienes que usar el proceso de salvarla donde corresponde.

si no es el caso mueve la imagen re dimensionada con un FSO.

y si la idea va por ese lado
nCount = Upload.Save(server.MapPath("/lugares/"&carpeta&"/200x200"))

si y solo si las subes ya con las dimensiones de 200x200

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
  #7 (permalink)  
Antiguo 06/06/2008, 02:52
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 17 años
Puntos: 1
Respuesta: Subir múltiples imagenes a multiples carpetas

Hola JuanRAPerez:

Al ponerlo de esa forma me da error en la siguiente linea:

nCount = Upload.Save(server.MapPath("/lugares/"&carpeta&"/100x100"))%>

nCount = Upload.Save(server.MapPath("/lugares/"&carpeta&"/200x200"))%>


y me dice lo siguiente:


save method must not be called more than once


yo entiendo que el metodo ya esta abierto o algo asi.



Como seria?



Gracias
__________________
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
Publicado por: portillo18
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
  #8 (permalink)  
Antiguo 06/06/2008, 08:28
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 17 años
Puntos: 1
Respuesta: Subir múltiples imagenes a multiples carpetas

SIGO PETAO EN ESTO!


alguien me puede echar una mano?



gracias
__________________
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
Publicado por: portillo18
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:13.