Ir para conteúdo

POWERED BY:

Arquivado

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

Debukis Ondeteibou

com Upload

Recommended Posts

Uso um sistema de upload em meu site numa pasta chamada administracao.o caminho dela está em meusite.dominio/administracaoporém quero que o destino das imagens cheguem emmeusite.dominio/imagensmas se eu digito o caminho com http:// ele dá erro por causa dos caracteres...há alguma forma de eu fazer isso gente?abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, tem sim.

 

Mostre seu código de Upload para que mostremos o ponto onde deve ser feita a alteração.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá então:

 

upload_funcoes.asp

ASP
<%

' Upload Sem componentes ---------------------------------------

Sub BuildUploadRequest(RequestBin)

on error resume next

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)

Loop

End Sub

Function getByteString(StringStr)

For i = 1 To Len(StringStr)

Char = Mid(StringStr, i, 1)

getByteString = getByteString & ChrB(AscB(Char))

Next

End Function

Function getString(StringBin)

getString = ""

For intCount = 1 To LenB(StringBin)

getString = getString & Chr(AscB(MidB(StringBin, intCount, 1)))

Next

End Function

' Fim upload sem Componentes -----------------------------------------

%>

upload_form2.asp

ASP
<!-- #include file = "upload_funcoes.asp" -->

<%

' Chamando Funções, que fazem o Upload funcionar

byteCount = Request.TotalBytes

RequestBin = Request.BinaryRead(byteCount)

Set UploadRequest = CreateObject("Scripting.Dictionary")

BuildUploadRequest RequestBin

' Tipo de arquivo que esta sendo enviado

tipo_foto = UploadRequest.Item("foto").Item("ContentType")

' Caminho completo dos arquivos enviados

caminho_foto = UploadRequest.Item("foto").Item("FileName")

' Nome dos arquivos enviados

nome_foto = Right(caminho_foto,Len(caminho_foto)-InstrRev(caminho_foto,"/"))

' Conteudo binario dos arquivos enviados

foto = UploadRequest.Item("foto").Item("Value")

' pasta onde as imagens serao guardadas

pasta = Server.MapPath("materias")

nome_foto = "/"&nome_foto

' pasta + nome dos arquivos

cfoto = "materias/" + nome_foto

' Fazendo o Upload do arquivo selecionado

if foto <> "" then

Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")

Set MyFile = ScriptObject.CreateTextFile(pasta & nome_foto)

For i = 1 to LenB(foto)

MyFile.Write chr(AscB(MidB(foto,i,1)))

Next

MyFile.Close

end if

' Redireciona após 5 segundos

response.write "<br><br>você será redirecionado em 5 segundos..<br>"

response.write "<meta http-equiv='refresh' content='5; url=principal.asp'/>"

%>

 

está ai, creio que não seja necessário a página do html do form...

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui:

pasta = Server.MapPath("materias")

Você substitui pelo nome da nova pasta.

ASP
pasta = Server.MapPath("imagens")

Compartilhar este post


Link para o post
Compartilhar em outros sites
ASP
pasta = Server.MapPath("../imagens")

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique no servidor se o parent path está habilitado, caso tenha duvidas de como verificar isso, veja com o suporte de hospedagem. Se precisar poste novamente

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.