Ir para conteúdo

POWERED BY:

Arquivado

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

Loko da Web

[Resolvido] Update

Recommended Posts

Bom dia !!!

 

Tenho um form pra update de imagens, utilizei os sistema de fso mesmo,... consegui fazer tudo certo, faço a alteração das imagens, da mensagem de ok. Mas, quando vou verificar a imagem se foi alterada, a imagem na verdade não foi alterada. Fiz de tudo,... sou péssimo pra update, se puderem me ajudar, segue o cod abaixo:

 

form.asp

<%
 set conexao = createobject("adodb.connection")
 constr = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.mappath("db/filmes.mdb")
 conexao.open constr
 
 id = request.QueryString("id")
 nome_cat = request.querystring("nome_cat")
 cat = request.querystring("cat")
 idfoto = request.querystring("idfoto")
 idcat = request.querystring("idcat")
 
 set rs = conexao.execute("select * from fotos where id = "&idfoto)
 %>
 <html>
 <head>
 <title>Editar Categoria</title>
 <!--#include file="topo.inc"-->
 </head>
 <body bottommargin="0" topmargin="0" leftmargin="0">
 <form name="form6" method="post" enctype="multipart/form-data" action="editar_filme_form_ok.asp">
 <input type="hidden" name="id" value="<%=request.QueryString("idcat")%>">
 <table align="center" border="0" cellpadding="5" cellspacing="0">
 <tr><td colspan="2"><font size="5">Editar Categoria</td></tr>
 <tr>
 <td colspan="2"> </td>
 </tr>
 <tr> 
 <td><strong>Nome:</strong></td>
 <td><input name="nome" type="text" value="<%=rs("nome")%>" size="45"></td></tr>
 <tr> 
 <td><strong>Nome Original:</strong></td>
 <td><input name="nome_original" type="text" value="<%=rs("nome_original")%>" size="45"></td></tr>
 <tr><td><strong>Foto Grande: </td>
 <td><input type="file" name="foto" size="40"></td></tr>
 <tr><td><strong>Foto Pequena: 
 <td><input type="file" name="thumb" size="40"></td></tr>
 <tr> 
 <td><strong>Pais:</strong></td>
 <td><input name="pais" type="text" value="<%=rs("pais")%>" size="45"></td></tr>
 <tr> 
 <td><strong>Ano:</strong></td>
 <td><input name="ano" type="text" value="<%=rs("ano")%>" size="45"></td></tr>
 <tr> 
 <td><strong>Direção:</strong></td>
 <td><input name="diretor" type="text" value="<%=rs("diretor")%>" size="45"></td></tr>
 <tr> 
 <td><strong>Elenco:</strong></td>
 <td><input name="elenco" type="text" value="<%=rs("elenco")%>" size="45"></td></tr>
 <tr> 
 <td><strong>Duração:</strong></td>
 <td><input name="duracao" type="text" value="<%=rs("duracao")%>" size="45"></td></tr>
 <tr> 
 <td><strong>Sinopse:</strong></td>
 <td><textarea name="detalhe" style="width:400px;height:350px;"><%=rs("detalhe")%></textarea></td></tr>
 <tr> 
 <td><strong>Trailer:</strong></td>
 <td><input name="trailer" type="text" value=""></td></tr>
 <tr> 
 <td colspan="2"><input type="submit" name="Submit" value="Editar"> </td>
 </tr>
 </table>
 </form>
 </body>
 </html>

 

form_ok.asp

<!-- #include file = "upload_funcoes.asp" -->
 <!--#include file="topo.inc"-->
 
 <%
 ' Chamando Funções, que fazem o Upload funcionar
 byteCount = Request.TotalBytes
 RequestBin = Request.BinaryRead(byteCount)
 Set UploadRequest = CreateObject("Scripting.Dictionary")
 BuildUploadRequest RequestBin
 
 ' Recuperando os Dados Digitados ----------------------
 idcat = UploadRequest.Item("id").Item("Value")
 nome = UploadRequest.Item("nome").Item("Value")
 nome_original = UploadRequest.Item("nome_original").Item("Value")
 detalhe = UploadRequest.Item("detalhe").Item("Value")
 diretor = UploadRequest.Item("diretor").Item("Value")
 elenco = UploadRequest.Item("elenco").Item("Value")
 duracao = UploadRequest.Item("duracao").Item("Value")
 pais = UploadRequest.Item("pais").Item("Value")
 ano = UploadRequest.Item("ano").Item("Value")
 trailer = UploadRequest.Item("trailer").Item("Value")
 
 ' Tipo de arquivo que esta sendo enviado
 tipo_foto = UploadRequest.Item("foto").Item("ContentType")
 tipo_thumb = UploadRequest.Item("thumb").Item("ContentType")
 
 ' Caminho completo dos arquivos enviados
 caminho_foto = UploadRequest.Item("foto").Item("FileName")
 caminho_thumb = UploadRequest.Item("thumb").Item("FileName")
 
 ' Nome dos arquivos enviados
 nome_fotos = Right(caminho_foto,Len(caminho_foto)-InstrRev(caminho_foto,"\"))
 nome_thumb = Right(caminho_thumb,Len(caminho_thumb)-InstrRev(caminho_thumb,"\"))
 
 ' Conteudo binario dos arquivos enviados
 foto = UploadRequest.Item("foto").Item("Value")
 thumb = UploadRequest.Item("thumb").Item("Value")
 
 ' pasta onde as images serao guardadas
 pasta = Server.MapPath("images/")
 nome_fotos = "/"&nome_fotos
 nome_thumb = "/"&nome_thumb
 
 ' pasta + nome dos arquivos
 cfoto = "images" + nome_fotos
 cthumb = "images" + nome_thumb
 
 ' Fazendo o Upload do arquivo selecionado
 if foto <> "" then
 Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
 Set MyFile = ScriptObject.CreateTextFile(pasta & nome_fotos)
 For i = 1 to LenB(foto)
 MyFile.Write chr(AscB(MidB(foto,i,1)))
 Next
 MyFile.Close
 end if
 
 if thumb <> "" then
 Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
 Set MyFile = ScriptObject.CreateTextFile(pasta & nome_thumb)
 For i = 1 to LenB(thumb)
 MyFile.Write chr(AscB(MidB(thumb,i,1)))
 Next
 MyFile.Close
 end if
 
 ' Conecta-se ao Banco de Dados
 url_conexao = Server.MapPath("db/filmes.mdb")
 set conexao = Server.CreateObject("ADODB.Connection")
 conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&url_conexao 
 
 ' cadastra os dados no banco de dados
 sql = "update fotos set idcat = '"&id&"' , foto = '"&cfoto&"' , thumb = '"&cthumb&"' , nome = '"&nome&"' , nome_original = '"&nome_original&"' , detalhe = '"&detalhe&"' , diretor = '"&diretor&"' , elenco = '"&elenco&"' , duracao = '"&duracao&"' , pais = '"&pais&"' , ano = '"&ano&"' , trailer = '"&trailer&"' where id = "&idcat
 Conexao.Execute(sql)
 
 ' Mostra Mensagem de Confirmação na Tela
 Response.write "<p align=""center"">Filme editado com sucesso!
 <a href=""editar_filme.asp"">Editar outro filme</a>"
 %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele gera algum erro ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique na sua instrução SQL se os campos,estao setado certo no bd, pois se você tiver um campo numérico e tentar passar um valor alfa ele dará erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique na sua instrução SQL se os campos,estao setado certo no bd, pois se você tiver um campo numérico e tentar passar um valor alfa ele dará erro.

Fiz isso, coloquei um texto num campo numerico, e mesmo assim deu mensagem "cadastro enviado com sucesso",... muito estranho isso, da mensagem de ok e quando vou visualizar os dados se foram alterados, na verdade não houve alteracao alguma,... :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acima da linha:

Conexao.Execute(sql)

 

Coloque:

Response.Write sql
Response.End

Poste o resultado a após a execução da página.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acima da linha:

Conexao.Execute(sql)

 

Coloque:

Response.Write sql
 Response.End

Poste o resultado a após a execução da página.

Deu isso:

 

update fotos set foto = 'images/81073_g.jpg' , thumb = 'images/81073_p.jpg' , nome = 'Kung Fu Panda ' , nome_original = 'Kung Fu Panda ' , detalhe = 'teste' , diretor = 'Oliver Blackburn' , elenco = 'Lucy Liu (voz), Jackie Chan (voz), Ian McShane (voz), Angelina Jolie (voz), Dustin Hoffman (voz), Jack Black (voz) ' , duracao = '100' , pais = 'INGLATERRA' , ano = '2008' where id = 3

Compartilhar este post


Link para o post
Compartilhar em outros sites

teste sua SQL direto no banco e veja se atualiza.como você esta usando access, verifique se tem o MDAC mais recente instalado, tente usar assim:

 

varlogin=replace (varlogin,"'","")
	varsenha=replace  (varsenha,"'","")
	varemail=replace(varemail,"'","")
	'crio a conexao%>
	<!--#include file="conn/conexao1.asp"-->
	<% 'abro a conexao
	call abreconexao
	'crio o rs
	set rs=Server.createobject("ADODB.Recordset")
	'crio a SQL
	SQL="UPDATE login SET login='"&varlogin&"',senha='"&varsenha&"',email='"&varemail&"' WHERE codigo="&varcodigo&""
	rs.open SQL,conexao,1,3

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde !!!!!

 

Pessoal o problema é na clausula where,... eu fiz assim, e deu certo, porem,....

 

where idcat = "&idcat

O problema é que ele update todos os registros cadastrados neste idcat (esse campo é pra categorias, entao se tem 5 filmes neste idcat, todos os 5 filmes sofrerao alterações, e não no filme que apliquei as alterações), fiz de outras maneiras, como

 

where id = "&idcat
where idcat = "&idfoto

Nenhum deu certo, entao o problema é aqui no Where, mas não estou achando o caminho certo,... Help http://forum.imasters.com.br/public/style_emoticons/default/cry.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

teste sua SQL direto no banco e veja se atualiza.como você esta usando access, verifique se tem o MDAC mais recente instalado, tente usar assim:

 

varlogin=replace (varlogin,"'","")

	  varsenha=replace  (varsenha,"'","")

	  varemail=replace(varemail,"'","")

	  'crio a conexao%>

	  <!--#include file="conn/conexao1.asp"-->

	  <% 'abro a conexao

	  call abreconexao

	  'crio o rs

	  set rs=Server.createobject("ADODB.Recordset")

	  'crio a SQL

	  SQL="UPDATE login SET login='"&varlogin&"',senha='"&varsenha&"',email='"&varemail&"' WHERE codigo="&varcodigo&""

	  rs.open SQL,conexao,1,3

Xan, fiz o que você pediu, não acontece nada,... o problema é a clausula where, como você pode ter visto colocando idcat = idcat no where, ele atualiza, o porem é que todos os filmes cadastrados nesta categoria serao atualizados e nao o que modifiquei,... pra ficar melhor, vou colocar os dados do bd.

 

Categorias

id nome_cat

Fotos

id idcat foto thumb nome nome_original detalhe diretor elenco duracao pais ano trailer

Para ver como funciona o sistemas de filmes que estou montado, vou colocar o link abaixo, ainda esta no estagio inicial, apenas testando os codigos,... no geral esta pronto. Falta apenas fazer o form de update funcionar... Se precisarem de mais alguma coisa é só falar.

 

http://www.aspet.somee.com/sistema_locador...ora/default.asp

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.