Ir para conteúdo

POWERED BY:

Arquivado

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

-_KIKO_-

Problema com esquema de Upload

Recommended Posts

<%@ Language=VBScript %><%    Dim Contador, Tamanho    Dim ConteudoBinario, ConteudoTexto    Dim Delimitador, Posicao1, Posicao2    Dim ArquivoNome, ArquivoConteudo, PastaDestino    Dim objFSO, objArquivo                 PastaDestino = "\ups"                Tamanho = Request.TotalBytes    ConteudoBinario = Request.BinaryRead(Tamanho)    For Contador = 1 To Tamanho  ConteudoTexto = ConteudoTexto & Chr(AscB(MidB(ConteudoBinario, Contador, 1)))    Next    Delimitador = Left(ConteudoTexto,InStr(ConteudoTexto, vbCrLf)-1)    Set objFSO = Server.CreateObject("Scripting.FileSystemObject")         Posicao1 = InStr(ConteudoTexto, Delimitador) + Len(Delimitador)    Do While True  ArquivoNome = ""  Posicao1 = InStr(Posicao1, ConteudoTexto, "filename=")  If Posicao1 = 0 Then 	 Exit Do  Else 	 Posicao1 = Posicao1 + 10 	 Posicao2 = InStr(Posicao1, ConteudoTexto, """") 	 For Contador = Posicao2-1 To Posicao1 Step -1    If Mid(ConteudoTexto, Contador, 1) <> "\" Then   	 ArquivoNome = Mid(ConteudoTexto, Contador, 1) & ArquivoNome    Else   	 Exit For    End If 	 Next 	  	 Posicao1 = InStr(Posicao1, ConteudoTexto, vbCrLf & vbCrLf) + 4 	 Posicao2 = InStr(Posicao1, ConteudoTexto, Delimitador) - 2 	 ArquivoConteudo = Mid(ConteudoTexto, Posicao1, Posicao2-Posicao1+1)   	 If ArquivoNome <> "" Then    Set objArquivo = objFSO.CreateTextFile(PastaDestino & ArquivoNome, True)     objArquivo.WriteLine ArquivoConteudo         objArquivo.Close     Response.Write "Arquvo " & PastaDestino & ArquivoNome & " gravado com sucesso!!!<BR>"    Set objArquivo = Nothing 	 End If  End If    Loop    Set objFSO = Nothing %>

Tá vendo essa linha:

   PastaDestino = "\ups"

é pra onde Upa...

legal, se eu colocar "\" vai pro C:

seu eu colocar \ups não vai pra pasta c:\inetpub\wwwroot\upload\ups (sendo que esse arquivo está nessa pasta c:\inetpub\wwwroot\upload

a pasta ups é onde fica os uploads do pessoal...

 

ai está a questão

 

Como fazer pra ele upara para c:\inetpub\wwwroot\upload\ups ?

 

se eu colocar

PastaDestino = "c:\inetpub\wwwroot\upload\ups" ai vai...

mas eu quero que ele não peça o endereço completo...

quero que vá na pasta direto pq no servidor que o ASP vai ficar, troca de unidade todo mês e as pastas mudam toda semana.....hoje é inetpub, amanhã é inetppa.......

eles mudam os nomes.....teria que ser "autodefinir " esse ASP para ele ir para a /UPS direto...sozinho!

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%@ Language=VBScript %><%   Dim Contador, Tamanho   Dim ConteudoBinario, ConteudoTexto   Dim Delimitador, Posicao1, Posicao2   Dim ArquivoNome, ArquivoConteudo, PastaDestino   Dim objFSO, objArquivo               PastaDestino = Server.MapPath("ups")              Tamanho = Request.TotalBytes   ConteudoBinario = Request.BinaryRead(Tamanho)   For Contador = 1 To Tamanho ConteudoTexto = ConteudoTexto & Chr(AscB(MidB(ConteudoBinario, Contador, 1)))   Next   Delimitador = Left(ConteudoTexto,InStr(ConteudoTexto, vbCrLf)-1)   Set objFSO = Server.CreateObject("Scripting.FileSystemObject")       Posicao1 = InStr(ConteudoTexto, Delimitador) + Len(Delimitador)   Do While True ArquivoNome = "" Posicao1 = InStr(Posicao1, ConteudoTexto, "filename=") If Posicao1 = 0 Then  Exit Do Else  Posicao1 = Posicao1 + 10  Posicao2 = InStr(Posicao1, ConteudoTexto, """")  For Contador = Posicao2-1 To Posicao1 Step -1   If Mid(ConteudoTexto, Contador, 1) <> "\" Then    ArquivoNome = Mid(ConteudoTexto, Contador, 1) & ArquivoNome   Else    Exit For   End If  Next    Posicao1 = InStr(Posicao1, ConteudoTexto, vbCrLf & vbCrLf) + 4  Posicao2 = InStr(Posicao1, ConteudoTexto, Delimitador) - 2  ArquivoConteudo = Mid(ConteudoTexto, Posicao1, Posicao2-Posicao1+1)   If ArquivoNome <> "" Then   Set objArquivo = objFSO.CreateTextFile(PastaDestino & ArquivoNome, True)    objArquivo.WriteLine ArquivoConteudo        objArquivo.Close    Response.Write "Arquvo " & PastaDestino & ArquivoNome & " gravado com sucesso!!!<BR>"   Set objArquivo = Nothing  End If End If   Loop   Set objFSO = Nothing %>

 

 

 

Já tentei usando essa sua dica rOcKLoCo e não dá!

Olha oque ele faz: "Arquivo c:\inetpub\wwwroot\upload\upsrefech.txt gravado com sucesso!!!"

 

Upei um arquivo que se chama REFECH.TXT e ao upar, ele upou em C:\Inetpub\wwwroot\uploads\upsrefech.txt

 

ou seja, ele colocou a palavra "ups" antes do nome do arquivo......

alterou o nome mas não foi na pasta...

tentei colocar assim também:

Server.MapPath("ups\") e ele simplismente ignora a barra

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%@ Language=VBScript %><%   Dim Contador, Tamanho   Dim ConteudoBinario, ConteudoTexto   Dim Delimitador, Posicao1, Posicao2   Dim ArquivoNome, ArquivoConteudo, PastaDestino   Dim objFSO, objArquivo            PastaDestino = Server.MapPath("ups")  & "\"            Tamanho = Request.TotalBytes   ConteudoBinario = Request.BinaryRead(Tamanho)   For Contador = 1 To Tamanho ConteudoTexto = ConteudoTexto & Chr(AscB(MidB(ConteudoBinario, Contador, 1)))   Next   Delimitador = Left(ConteudoTexto,InStr(ConteudoTexto, vbCrLf)-1)   Set objFSO = Server.CreateObject("Scripting.FileSystemObject")       Posicao1 = InStr(ConteudoTexto, Delimitador) + Len(Delimitador)   Do While True ArquivoNome = "" Posicao1 = InStr(Posicao1, ConteudoTexto, "filename=") If Posicao1 = 0 Then  Exit Do Else  Posicao1 = Posicao1 + 10  Posicao2 = InStr(Posicao1, ConteudoTexto, """")  For Contador = Posicao2-1 To Posicao1 Step -1   If Mid(ConteudoTexto, Contador, 1) <> "\" Then    ArquivoNome = Mid(ConteudoTexto, Contador, 1) & ArquivoNome   Else    Exit For   End If  Next    Posicao1 = InStr(Posicao1, ConteudoTexto, vbCrLf & vbCrLf) + 4  Posicao2 = InStr(Posicao1, ConteudoTexto, Delimitador) - 2  ArquivoConteudo = Mid(ConteudoTexto, Posicao1, Posicao2-Posicao1+1)   If ArquivoNome <> "" Then   Set objArquivo = objFSO.CreateTextFile(PastaDestino & ArquivoNome, True)    objArquivo.WriteLine ArquivoConteudo        objArquivo.Close    Response.Write "Arquvo " & PastaDestino & ArquivoNome & " gravado com sucesso!!!<BR>"   Set objArquivo = Nothing  End If End If   Loop   Set objFSO = Nothing %>

 

Fim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenha deixar esta linhaPastaDestino = "\ups"Da forma abaixoPastaDestino=Server.mappath("..") & "\upload\ups\"Agora, ficaria mais facil se você tivesse algum componente instalado, como o Persists.Upload ou o tal do Asp.Upload, umas 3 ou 4 linhas fariam o trabalho.

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.