Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

SerraVentura

Pre Loader em Asp

Recommended Posts

Tow fazendo uma ferramenra em ASP de UPload de arquivos de .MP3 para meu

cliente, esse upload esta sendo feito sem componente, só que gostaria de

saber se é possivel colocar um "Carregando" na tela ate o arquivo ser

totalmente carregado no servidor, pois meu cliente não consegue acompanhar a

barra do navegador e acha que esta travado!....

 

um exemplo que consegui achar pra demostrar foi esse:

http://www.superasp.com.br/speed/speed.asp

 

mas maneiro seria se fosse possivel colocar a porcentagem... dessa maneira

nunca vi em ASP só em flash...

 

se alguem conhece algo...

 

vlw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

ai mano..

 

estuda esse codigo:

 

<% @ LANGUAGE="VBSCRIPT" %><%  arquivo = Replace(Request.ServerVariables("SCRIPT_NAME"),"\","/")  For i = 1 to Len(arquivo)	If i = 1 Then nome = ""	caracter = Mid(StrReverse(arquivo),i,1)	If caracter = "/" Then Exit For	nome = nome & caracter  Next  nome = StrReverse(nome)  endereco_fisico = Replace(Replace(Replace(Request.ServerVariables("PATH_TRANSLATED"),nome,""),"/","\"),"admin\","")  Set caracter = Nothing  Set nome = Nothing  endereco_fisico = endereco_fisico & "imagens\"  For i = 1 to len(StrReverse(Request.ServerVariables("PATH_INFO")))	If Mid(StrReverse(Request.ServerVariables("PATH_INFO")),i,1) = "/" Then Exit For  Next  endereco_vitual = "/" & Left(Request.ServerVariables("PATH_INFO"),Len(Request.ServerVariables("PATH_INFO"))-i)  endereco_vitual = Replace(endereco_vitual,"admin","")  endereco_vitual = Replace(endereco_vitual,"//","")  For i = 1 to Len(endereco_vitual)	If i = 1 Then nome = ""	caracter = Mid(endereco_vitual,i,1)	If i > 1 And caracter = "/" Then Exit For	nome = nome & caracter  Next  endereco_vitual = Replace(endereco_vitual,nome,"")  endereco_vitual = endereco_vitual  endereco_vitual = Replace(endereco_vitual,"//","")  endereco_vitual = endereco_vitual & "imagens/"%><HTML><HEAD><TITLE>Imagens</TITLE><meta name="copyright" content="Dataform"><meta name="keywords" content="dataform, asp dataform, aspdataform, asp-dataform"><meta name="robots" content="ALL"><style type="text/css"><!--.campo_alerta{font-family: Tahoma, Verdana, Arial;font-size: 11px;border: 1px solid black;background-color: #ffff99;}.texto_pagina{font-family: Tahoma, Verdana, Arial;font-size: 11px;color: dimgray;}.tabela_formulario{width: 200;background-color: white;}.titulo_campos{font-family: Tahoma, Verdana, Arial;font-size: 11px;color: dimgray;background-color: whitesmoke;}.campos_formulario{font-family: Tahoma, Verdana, Arial;font-size: 11px;color: dimgray;background-color: whitesmoke;}.botao_enviar{font-family: Tahoma, Verdana, Arial;font-size: 11px;color: white;background-color: gray;}a{text-decoration: none;}a:hover{text-decoration: underline;}--></style><script language=javascript>function envia_imagem(imagem) {self.opener.recebe_imagem('<%=Request("campo")%>', imagem);window.close();}</script></HEAD><BODY class="texto_pagina" bgcolor="#FFFFFF"><font face="Arial, Helvetica, sans-serif"><%Sub BuildUploadRequest(RequestBin)	PosBeg = 1	PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))	boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg)	boundaryPos = InstrB(1,RequestBin,boundary)	Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString("--")))		Dim UploadControl		Set UploadControl = CreateObject("Scripting.Dictionary")		Pos = InstrB(BoundaryPos,RequestBin,getByteString("Content-Disposition"))		Pos = InstrB(Pos,RequestBin,getByteString("name="))		PosBeg = Pos+6		PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))		Name = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))		PosFile = InstrB(BoundaryPos,RequestBin,getByteString("filename="))		PosBound = InstrB(PosEnd,RequestBin,boundary)		If  PosFile<>0 AND (PosFile<PosBound) Then			PosBeg = PosFile + 10			PosEnd =  InstrB(PosBeg,RequestBin,getByteString(chr(34)))			FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))			UploadControl.Add "FileName", FileName			Pos = InstrB(PosEnd,RequestBin,getByteString("Content-Type:"))			PosBeg = Pos+14			PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))			ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))			UploadControl.Add "ContentType",ContentType			PosBeg = PosEnd+4			PosEnd = InstrB(PosBeg,RequestBin,boundary)-2			Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg)		Else			Pos = InstrB(Pos,RequestBin,getByteString(chr(13)))			PosBeg = Pos+4			PosEnd = InstrB(PosBeg,RequestBin,boundary)-2			Value = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))		End If	UploadControl.Add "Value" , Value		UploadRequest.Add name, UploadControl		BoundaryPos=InstrB(BoundaryPos+LenB(boundary),RequestBin,boundary)	LoopEnd SubFunction getByteString(StringStr) For i = 1 to Len(StringStr) 	char = Mid(StringStr,i,1)	getByteString = getByteString & chrB(AscB(char)) NextEnd FunctionFunction getString(StringBin) getString ="" For intCount = 1 to LenB(StringBin)	getString = getString & chr(AscB(MidB(StringBin,intCount,1)))  NextEnd Functionpasta_imagens = Request("pasta") & "/"pasta = Server.URLEncode(Request("pasta"))campo = Server.URLEncode(Request("campo"))Set objFS = Server.CreateObject("Scripting.FileSystemObject")If Not objFS.FolderExists(endereco_fisico & pasta_imagens) Then  objFS.CreateFolder(endereco_fisico & pasta_imagens)End ifIf Request("enviar") <> "" Then  Set objFS = Nothing  byteCount = Request.TotalBytes  RequestBin = Request.BinaryRead(byteCount)  Dim UploadRequest  Set UploadRequest = CreateObject("Scripting.Dictionary")  BuildUploadRequest  RequestBin  contentType = UploadRequest.Item("blob").Item("ContentType")  filepathname = UploadRequest.Item("blob").Item("FileName")  filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))  value = UploadRequest.Item("blob").Item("Value")  If Lcase(Right(filename,3)) = "jpg" Or Lcase(Right(filename,3)) = "gif" Or Lcase(Right(filename,3)) = "swf" then	Set objFS = Server.CreateObject("Scripting.FileSystemObject")	If objFS.FileExists( endereco_fisico & pasta_imagens & filename) Then%><script language=javascript>alert("Erro ao enviar imagem, o arquivo '<%=filename%>' já existe na pasta '<%=pasta_imagens%>' do seu site")</script><%	Else	  If LenB(value) > 200000 then%><script language=javascript>alert("Erro ao enviar a imagem, o tamanho do arquivo deve ser menor que 200Kb")</script><%	  Else%><strong><font color="#CC0000">Enviando imagem, aguarde...</font></strong><br><input name="progress" value="0% enviado" style="border:none"></font><table width="100" border="0" cellspacing="0" cellpadding="0" style="border: 1px inset">  <tr> 	<td><font face="Arial, Helvetica, sans-serif">	  <input name="barra" style="border:none; background-color: orangered; height: 10; width:1" readonly="">	  </font></td>	<td></td>  </tr></table><font face="Arial, Helvetica, sans-serif"><%	  Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")	  Set MyFile = ScriptObject.CreateTextFile( endereco_fisico & pasta_imagens & filename)	  progress = 0	  n = 0	  For i = 1 to LenB(value)		MyFile.Write chr(AscB(MidB(value,i,1)))		progress = Fix((i * 100) / LenB(value))		If n <> progress then		  n = progress%><script language=javascript>progress.value = "<%=n%>% enviado"</script><script language=javascript>barra.style.width = "<%=n%>"</script><%		End if	  Next	  MyFile.Close%><script language=javascript>envia_imagem('<%=endereco_vitual & pasta_imagens & filename%>');</script><%	End If	Set objFS = Nothing  End ifElse%><script language=javascript>alert("Erro ao enviar a imagem, lembre-se que ela deve possuir extensão JPG ou GIF, ou SWF no caso do banner");</script><% End IfEnd If%></font><FORM METHOD="post" ENCTYPE="multipart/form-data" ACTION="<%=Request.ServerVariables("SCRIPT_NAME")%>?campo=<%=campo%>&pasta=<%=pasta%>&enviar=sim" onSubmit="document.all.enviar.disabled=true">  <font face="Arial, Helvetica, sans-serif"><strong><font color="#CC0000">Album   de imagens</font><font color="#006699"><br>  </font></strong><font color="#006699"><font color="#60707F">Enviar nova imagem</font></font><BR>  <INPUT type="file" name="blob" class="campos_formulario" style="width: 100%">  <INPUT type="submit" name="enviar" value="Enviar" class="botao_enviar">  <br>  <i>(A imagem deve ter nó máximo 200Kb)</i> </font></FORM><font color="#60707F" face="Arial, Helvetica, sans-serif">Imagens do album</font><font face="Arial, Helvetica, sans-serif"><BR></font><DIV class="titulo_campos" style="width:100%; height:150px; visibility: visible; overflow: auto; border:2px inset">   <font face="Arial, Helvetica, sans-serif"><%lista_imagens pasta_imagens, "jpg,gif,swf"Function lista_imagens( strFolder, tipo )  Dim Folder, File  Dim ObjFS, objRootFolder  Set ObjFS = Server.CreateObject("Scripting.FileSystemObject")  Set objFolder = ObjFS.GetFolder(endereco_fisico & strFolder)  For Each File in objFolder.files	tipo = Replace(tipo, ",", "")	For i = 1 to len(tipo) step 3	  If lcase(Right(File, 3)) = lcase(Mid(tipo, i, 3)) Then		Response.Write "  <a href=""javascript: envia_imagem('" & endereco_vitual & pasta_imagens & File.Name & "')"" class=""texto_pagina"">" & File.Name & "</a><BR>" & vbcrlf	  End If	Next  Next    Response.Write "</td></tr></table>" & vbcrlf    Set objFolder = Nothing  Set Folder = NothingEnd Function%>  </font></DIV><script language=javascript>document.all.enviar.disabled = false;</script></BODY></HTML>

abracos http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara muito bom, mas muito bom isso!!eu ja tinha pensado numa logica parecida mas naum sabia como começar.....só q ainda estou com um problema...o pre load só aparece.... depois q ja tenho o resultado de carregado...tipoenquato esta carregando, fica na tela do formulario... e a barra do navegador sendo preenchida...ae depois q aparece o pre-funcionando rapidinho, junto com minha mensagem de carregado com sucesso...sera q isso esta acontecendo, pq o script de upload esta numa pagina separada do form??tipo existe um FORM q chama o script de UPLOAD...<form action="upload.asp">sera q se eu colocar o FORM chamando a mesma pagina e colocar o script nela funcionaria?mas mesmo assim vlw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.