Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/08/2009, 12:52
Avatar de ah_puch
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