Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Opa, tenho um código que insere as informações que eu coloco no formulário dentro do banco de dados, mas a imagem que eu faço o upload só está sendo gravada no servidor, não está sendo inserida no banco de dados.
Preciso saber como salvar a imagem no banco (ou pelo menos o caminho dela) e depois como puxar essa imagem juntamente com o "projeto" que foi inserido.
Valeu!
Formulário
<!--#include file="in/inc_header.asp"-->
<BODY>
<!--#include file="in/inc_openLogger.asp"-->
<!--#include file="in/inc_checaSenha.asp"-->
<table border=0 cellspacing=0 cellpadding=0 style="margin-left:10px;" align="center">
<tr>
<td style="padding-left:20px;" valign="top">
<br>
<div id="Titulo" style="font-weight:bold;text-align:center;width:100%;">Insere Promoção</div><br><br>
<form method="post" action="Upload_gui.asp" enctype="multipart/form-data">
<b>Nome da Promoção:</b><br>
<input type="text" title="Nome da Promoção" name="nome" style="width:350;"><br><br>
<b>Descrição da Promoção</b><br>
<textarea name="desc" title="Descrição da Promoção" rows="5" cols="10" style="width:350;height:150;"></textarea><br><br>
Thumbnail:<br>
<input size="30" name="thumbnail" type="file"><br><br>
Original:<br>
<input size="30" name="original" type="file"><br><br>
<input type="submit" value="Insere" style="width:170;"><input type="reset" value="Limpa" style="width:170;margin-left:10px;">
</form>
</td>
</tr>
</table><br>Envia.asp
<!--#include file="in/inc_header.asp"-->
<BODY>
<!--#include file="in/inc_openLogger.asp"-->
<!--#include file="in/inc_checaSenha.asp"-->
<table border=0 cellspacing=0 cellpadding=0 style="margin-left:10px;" align="center">
<tr>
<td style="padding-left:20px;" valign="top">
<%
Set Upload = Server.CreateObject("Persits.Upload")
Server.MapPath("/") & "sysImage/"
Count = Upload.SaveVirtual ("/sysImage/")
%>
<%
'Resgata as variáveis'
varNome = Request.form("nome")
varDesc = Request.form("desc")
varImg1 = Request.form("thumbnail")
varImg2 = Request.form("orginal")
'trata as variáveis necessárias para demonstração'
varDesc = replace(varDesc,"<aspa>","'")
varNome = replace(varNome,"<aspa>","'")<br>
<b>Promoção inserida com sucesso!</b>
<%
sqlInsere = "INSERT INTO tabfotos (nomePromocao,descricao,thumbnail,original) VALUES ('"&varNome&"','"&varDesc&"','"&varImg1&"','"&varImg2&"')"
set rsquery = conn.execute(sqlInsere)
set rsquery = Nothing
%>
Request object error 'ASP 0207 : 80004005'
Cannot use Request.Form
/admin/envia.asp, line 18
Cannot use Request.Form collection after calling BinaryRead.
Movido de Access http://forum.imasters.com.br/public/style_emoticons/default/seta.gif ASP
>
Formulário
<!--#include file="in/inc_header.asp"-->
<BODY>
<!--#include file="in/inc_openLogger.asp"-->
<!--#include file="in/inc_checaSenha.asp"-->
<table border=0 cellspacing=0 cellpadding=0 style="margin-left:10px;" align="center">
<tr>
<td style="padding-left:20px;" valign="top">
<br>
<div id="Titulo" style="font-weight:bold;text-align:center;width:100%;">Insere Promoção</div><br><br>
<form method="post" action="Upload_gui.asp" enctype="multipart/form-data">
<b>Nome da Promoção:</b><br>
<input type="text" title="Nome da Promoção" name="nome" style="width:350;"><br><br>
<b>Descrição da Promoção</b><br>
<textarea name="desc" title="Descrição da Promoção" rows="5" cols="10" style="width:350;height:150;"></textarea><br><br>
Thumbnail:<br>
<input size="30" name="thumbnail" type="file"><br><br>
Original:<br>
<input size="30" name="original" type="file"><br><br>
<input type="submit" value="Insere" style="width:170;"><input type="reset" value="Limpa" style="width:170;margin-left:10px;">
</form>
</td>
</tr>
</table><br>Envia.asp
<!--#include file="in/inc_header.asp"-->
<BODY>
<!--#include file="in/inc_openLogger.asp"-->
<!--#include file="in/inc_checaSenha.asp"-->
<table border=0 cellspacing=0 cellpadding=0 style="margin-left:10px;" align="center">
<tr>
<td style="padding-left:20px;" valign="top">
<%
Set Upload = Server.CreateObject("Persits.Upload")
Server.MapPath("/") & "sysImage/"
Count = Upload.SaveVirtual ("/sysImage/")
%>
<%
'Resgata as variáveis'
varNome = Request.form("nome")
varDesc = Request.form("desc")
varImg1 = Request.form("thumbnail")
varImg2 = Request.form("orginal")
'trata as variáveis necessárias para demonstração'
varDesc = replace(varDesc,"<aspa>","'")
varNome = replace(varNome,"<aspa>","'")<br>
<b>Promoção inserida com sucesso!</b>
<%
sqlInsere = "INSERT INTO tabfotos (nomePromocao,descricao,thumbnail,original) VALUES ('"&varNome&"','"&varDesc&"','"&varImg1&"','"&varImg2&"')"
set rsquery = conn.execute(sqlInsere)
set rsquery = Nothing
%>
Request object error 'ASP 0207 : 80004005'
Cannot use Request.Form
/admin/envia.asp, line 18
Cannot use Request.Form collection after calling BinaryRead.
ao invés de usar Request.Form use só Request
no caso ficaria assim:
varNome = Request("nome")
varDesc = Request("desc")
varImg1 = Request("thumbnail")
varImg2 = Request("orginal")
não funcionou =/
>
ao invés de usar Request.Form use só Request
no caso ficaria assim:
varNome = Request("nome")
varDesc = Request("desc")
varImg1 = Request("thumbnail")
varImg2 = Request("orginal")
Request object error 'ASP 0208 : 80004005'
Cannot use generic Request collection
/admin/Upload_gui.asp, line 18
Cannot use the generic Request collection after calling BinaryRead.
você nao pode usar Request e nem Request.Form para pegar o nome da imagem
Use isso
Set Upload = Server.CreateObject("Persits.Upload") ' Criando o Objeto
PegaNomeCampo = Upload.Files("NomeDoCampo").FileName ' Pegando o conteúdo do campo todo
NomeCampo = Right(PegaNomeCampo, Len(PegaNomeCampo) - InstrRev(PegaNomeCampo,"\")) // aqui você trata a string, pegar somente o nome da imagem, dae você pega e salva no banco
Response.Write(PegaNomeCampo)
onde ta "NomeDoCampo" eu substituo pelo "name" de cada input=file ?
e o que você quer dizer com tratar a string? é que eu não manjo, aih fode o ** do palhaço ;s
Aham, NomeDoCampo eh do input que você pega o endereço da imagem
e na string eh o seguinte:
você tem o caminho inteiro da imagem, por exemplo:
c:\desktop\pasta\image.jpg
dae você trata essa string, pra pegar somente o no campo da imagem que seria ae no caso 'image.jpg' e nao pegar o caminho inteiro
o código atual que eu tenho só salva as imagens no servidor, não salva no DB.
<%
Upload.SaveToMemory
Path = Upload.Form(" [name do formulario] ")
For Each File in Upload.Files
File.SaveAs [caminho pra salvar as imagens] & "\" & File.ExtractFileName
Next
%>
Isso serve pra alguma coisa?
PS: O código que você me mandou, não consegui fazer funcionar...
Não acho nada pela internet que me ajude
É tão difícil inserir o nome da imagem que você faz o upload no banco de dados? pqp...
Dim objUpload
Dim strFileName
Dim strPath
Dim Name
Dim Upload, PegaNomeCampo, NomeCampo
Set Upload = Server.CreateObject("Persits.Upload") ' Criando o Objeto
Upload.Save Server.MapPath("..\Pasta\" & strFileName) ' Coloca a pasta que você vai salvar a imagem
PegaNomeCampo = Upload.Files("NomeDoCampo").FileName ' Pegando o conteúdo do campo todo
NomeCampo = Right(PegaNomeCampo, Len(PegaNomeCampo) - InstrRev(PegaNomeCampo,"\")) ' Pegar os últimos valores do campo
cara eu te juro que nao tem erro... tem alguma coisa a mais no seu, implemente no seu codigo isso que eu postei e se nao der certo, poste o código e o erro que dá.
obgd
Não da erro nenhum, em compensação ele não insere o nome da foto no banco de dados.
Tive que mudar o Save pra SaveVirtual, no servidor ele salva, sem problema como antes.
Acho que pode ser na hora de inserir no banco de dados...
Deixo os campos pra serem inseridos com qual tipo de dados? Texto mesmo? (atualmente estão como texto 100 caracteres)
Segue as duas páginas:
Inserir.asp
<form method="post" action="Upload_gui.asp" enctype="multipart/form-data">
<b>Nome da Promoção:</b><br>
<input type="text" title="Nome da Promoção" name="nome" style="width:350;"><br><br>
<b>Descrição da Promoção</b><br>
<textarea name="desc" title="Descrição da Promoção" rows="5" cols="10" style="width:350;height:150;"></textarea><br><br>
Thumbnail:<br>
<input size="30" name="thumbnail" type="file"><br><br>
Original:<br>
<input size="30" name="original" type="file"><br><br>
<input type="submit" value="Insere" style="width:170;"><input type="reset" value="Limpa" style="width:170;margin-left:10px;">
</form>
Upload_gui.asp
<!--#include file="in/inc_header.asp"-->
<BODY>
<!--#include file="in/inc_openLogger.asp"-->
<!--#include file="in/inc_checaSenha.asp"-->
<table border=0 cellspacing=0 cellpadding=0 style="margin-left:10px;" align="center">
<tr>
<td style="padding-left:20px;" valign="top">
<%
Dim objUpload
Dim strFileName
Dim strPath
Dim Name
Dim Upload, PegaNomeCampo, NomeCampo
Set Upload = Server.CreateObject("Persits.Upload") 'Criando o Objeto
Upload.SaveVirtual ("/sysImage/" & strFileName) 'Coloca a pasta que você vai salvar a imagem
PegaNomeCampo = Upload.Files("original").FileName 'Pegando o conteúdo do campo todo
NomeCampo = Right(PegaNomeCampo, Len(PegaNomeCampo) - InstrRev(PegaNomeCampo,"\")) ' Pegar os últimos valores do campo
%>
<%
'Resgata as variáveis'
varNome = Upload.form("nome")
varDesc = Upload.form("desc")
varImg1 = Upload.form("thumbnail")
varImg2 = Upload.form("orginal")
'trata as variáveis necessárias para demonstração'
varDesc = replace(varDesc,"<aspa>","'")
varNome = replace(varNome,"<aspa>","'") <br>
<b>Promoção inserida com sucesso!</b>
<br><br>
<%
sqlInsere = "INSERT INTO tabfotos (nomePromocao,descricao,thumbnail,original) VALUES ('"&varNome&"','"&varDesc&"','"&varImg1&"','"&varImg2&"')"
set rsquery = conn.execute(sqlInsere)
set rsquery = Nothing
%>
<a href="home.asp">clique aqui</a> para voltar a home!<br>
</td>
</tr>
</table><br>
manda o codigo..