Foros del Web » Programando para Internet » ASPX (.net) »

Upload de archivos

Estas en el tema de Upload de archivos en el foro de ASPX (.net) en Foros del Web. Hola a todos queria que me den una mano para saber como subir archivos al server, sin usar el fileupload, no quiero que aparezca el ...
  #1 (permalink)  
Antiguo 27/08/2009, 10:53
 
Fecha de Ingreso: agosto-2009
Ubicación: Buenos Aires
Mensajes: 13
Antigüedad: 14 años, 8 meses
Puntos: 0
Upload de archivos

Hola a todos queria que me den una mano para saber como subir archivos al server, sin usar el fileupload, no quiero que aparezca el textbox con el boton, la idea es que al hacer click en una imagen se seleccione un archivo y comience la subida.

El punto es que no se como subir archivos al server sin usar ese control, alguien puede darme una mano?
  #2 (permalink)  
Antiguo 28/08/2009, 12:52
Avatar de ah_puch  
Fecha de Ingreso: agosto-2005
Ubicación: Ecatepec, México
Mensajes: 180
Antigüedad: 18 años, 8 meses
Puntos: 3
Respuesta: Upload de archivos

mira lo que se me ocurre es algo por el estilo

colocas un input file con el estilo en visibility:hidden y mediante un java script lo puedes invocar una vez hecho esto lo que puedes hacer es recuperar el path de tu archivo en una variable y despues de tus debidas validaciones cambiar tu imagen por otra con el texto de guardar ahora o algo por el estilo. como sea aqui te dejo un ejemplo del como lo haria yo.

la primer parte de la magia la haces con javaScript y html y te quedaria algo asi:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<
html xmlns="http://www.w3.org/1999/xhtml" >
<
head runat="server">
    <
title></title>
    
    <
script type="text/javascript">
        function 
ActiveFileUpload() {
            var 
filehide document.getElementById('HideFile');
            
filehide.click();
            if (
filehide.value.length 0) {
                 
document.getElementById('upload').style.visibility 'visible';
                 
document.getElementById('img_Path').style.visibility 'hidden';
                 
document.getElementById('lbruta').innerHTML filehide.value.toString();
                
            }
                        
        }
     
</script>
     
     <style>
            .hide{
                visibility:hidden;
            }
     </style>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <a id="img_Path" onclick="ActiveFileUpload();"><img src="Images/Onion.jpg" alt="Activar"/></a>
        <asp:ImageButton ID="upload" runat="server" 
            ImageUrl="~/Images/Onion2.jpg" CssClass="hide" />
        <input id = "HideFile" style="visibility:hidden;" type="file" runat="server" />
        <asp:Label ID="lbruta" runat="server" ></asp:Label>
    </div>
    </form>
</body>
</html> 
la segunda parte que es la de subir el archivo al servidor la resuelves con ASP y te quedaria algo asi:
Código:
Private Sub Cmd_Subir_Archivo_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) 
        Dim Ext As String = LCase(System.IO.Path.GetExtension(HideFile.PostedFile.FileName))
        Dim Ruta = "Temp\" & System.IO.Path.GetFileName(HideFile.PostedFile.FileName)
        'Adjuntamos el Objeto Obtenido mediante el File Upload
        HideFile.PostedFile.SaveAs(Ruta)

    End Sub
ahi me avisas como te fue! esto sirve y pues es lo mas rapido que se me ocurrio..

si quieres el ejemplo de lo que hice contactame y te lo mando con mucho gusto por correo suerte y espero te sirva
__________________
La programacion no es un trabajo, es un Arte
http://www.purodev.blogspot.com

Última edición por ah_puch; 28/08/2009 a las 13:14
  #3 (permalink)  
Antiguo 28/08/2009, 13:56
 
Fecha de Ingreso: agosto-2009
Ubicación: Buenos Aires
Mensajes: 13
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Upload de archivos

Te agradezco tu dedicacion a responderme, muchas gracias, voy a probarlo y te cuento..
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 06:40.