Jump to content


Photo

Fazendo Upload


  • Faça o login para participar
4 replies to this topic

#1 abc2

abc2

    Cuidado com o Narcisismo

  • Usuários
  • 546 posts
  • Sexo:Não informado
  • Localidade:Blumenau/SC

Posted 23/05/2005, 21:39

olá pessoal
depois de um tempo afastado (viajando) voltei e já tenho uma duvida...

estou tentando fazer um pequeno sistema de upload, porem estou com alguns pequenos problemas....

estou fazendo assim:
<%
Dim objUpload
Set objUpload = Server.CreateObject("Persits.Upload")
objUpload.SetMaxSize 150000, True 
x = objUpload.SaveVirtual("/")
Set objUpload = Nothing
%>

<%
nome = Replace(Request("nome"),"'","''")
email = Replace(Request("email"),"'","''")
cnpath="DBQ=" & Server.MapPath("../database/database.mdb") 
DataSource = "Driver={Microsoft Access Driver (*.mdb)}; " & cnpath 
Set Conn = Server.CreateObject("ADODB.Connection") 
Conn.Open DataSource
sqlString = "INSERT INTO cadastros"&_
            "(nome, email) VALUES ( '" & nome & "', '" & email & "')"
Conn.Execute sqlString
%>
<script>
alert("Dados Cadastrados com Sucesso!");
location="home.asp"
</script>

o problema eh que no final da pagina eu preciso saber o nome do arquivo para que eu possa salvar seu caminho no banco de dados, pois no site eu faria assim:
<img src="http://www.site.com.br/imagens/<% = imagem %>" entendem?

alem disso, fazendo deste jeito o sistema retorna o seguinte erro:
Request object error 'ASP 0208 : 80004005'
Cannot use generic Request collection
/site/envia.asp, line 15
Cannot use the generic Request collection after calling BinaryRead


PS - o nome do campo do formulario é imagem

alguem pode dar um help?

#2 Generation

Generation

    Super Veterano

  • Usuários
  • 1546 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR

Posted 24/05/2005, 00:11

Bom atenção, seu formulario deverá estar com enctype="multipart/form-data", para o envio de dados pelo form e do upload.

Eis Um Exemplo...


    Set UpLoad = Server.CreateObject("Persits.Upload")
    UpLoad.Save ("\\InetPub\wwwroot\PASTA")
    Set File = UpLoad.Files("NOMEDOCAMPONOFORMULARIO")
    Filename = File.extractfilename ' aqui Obtemos o Nome da Imagem

    'Preste atenção aqui...

    nome = Replace(UpLoad.Form("nome"),"'","''")  'uso UpLoad.form("CAMPO")
    email = Replace(UpLoad.Form("email"),"'","''")
    


Nesse pequeno script, voce faz o upload e obtem o nome do arquivo enviado..


T+


Generation
Favoritos : | OpenSuse | Opera | Firefox | NetBeans | GMail | Leia As Regras | Use a Busca | Como fazer Perguntas Inteligentes |
“Obstáculos são aquelas coisas medonhas que você vê quando tira seus olhos de seu objetivo” (Henry Ford)
“É impossível para um homem aprender aquilo que ele acha que já sabe.” (Epíteto)
“A única razão da existência do tempo é para que todas as coisas não aconteçam de uma vez.”(Albert Einstein)

#3 abc2

abc2

    Cuidado com o Narcisismo

  • Usuários
  • 546 posts
  • Sexo:Não informado
  • Localidade:Blumenau/SC

Posted 25/05/2005, 10:55

ok Generation, valew está funcionando perfeitamente...

no entando tenho mais uma dúvida...
teria como apos o nome do arquivo eu criar um nro randômico?

por exemplo: ARQUIVO_123.doc
sendo que "123" seria um nro randomico que o proprio sistema iria gerar

pergunto isso pq com certeza vai ter situacoes em que o arquivo ja existe no servidor, entao ele iria sobrescrever o antigo, situação que nao pode acontecer...

#4 Agente Linhares

Agente Linhares

    fuis...abraços!

  • Ex-Admins
  • 3138 posts
  • Sexo:Não informado
  • Localidade:Biritiba Mirim-SP

Posted 25/05/2005, 11:16

um ex.:

Function GerarChave(Valores)
Dim teste_Array(9)
teste_Array(0) = "0"
teste_Array(1) = "1"
teste_Array(2) = "2"
teste_Array(3) = "3"
teste_Array(4) = "4"
teste_Array(5) = "5"
teste_Array(6) = "6"
teste_Array(7) = "7"
teste_Array(8) = "8"
teste_Array(9) = "9"
Randomize

Do While Len(Chave) < 06
Num = teste_array(Int(9 * Rnd )) 
Chave = Chave + Num 
Loop 
GerarChave = Chave
End Function

varChave = GerarChave(6)' pega o numero gerado

aí vc vega e junta a var do numero aleatorio gerado e junta com um nome qualquer.

aí tb vc pode adicionar + numeros ao inves de 9, + casas ao inves de 6..e por aí vai..
> Busca On-line - A Busca que faltava na Internet! - Cadastre-se!
---------------------------------------------------------------------------
> BRdesign.NET - Soluções em Websites e Sistemas E-Commerce.
---------------------------------------------------------------------------
> BR-ecommerce - Sua loja virtual na internet! - Apenas R$99,90 mensais (hospedagem inclusa)!

#5 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 15/06/2005, 10:09

Nuss Agente, pensemos, imagina o cara uploadando 200 imagens e usando essa função? Pesa..

Function GerarChave(Num)
'Num = quantidade de números que você quer que gere
Num = Abs(String(Num,"9"))
Randomize
Num = Abs(Rnd()*Num)
GerarChave = Num
End Function

Modo de Utlização:
<%
Var = 5
Var = GerarChave(5)
Response.Write(Var)
%>

[]'s
Eduardo Batista




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq