Ir para conteúdo

POWERED BY:

Arquivado

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

Loko da Web

Update de imagens

Recommended Posts

Boa noite !!!

 

Primeiramente, o update funciona 100%... O problema é o seguinte:

 

- Tenho um form com varios campos pra edição, tem imagens e texto.

- Mas, de vez em quando eu quero apenas modificar um texto, por exemplo, o nome... e manter a imagem que esta no bd.

- Modifico o nome e clico enviar e da ok.

- O problema é agora, quando vou visualizar o cadastro modificado, o nome foi alterado, tudo certo...mas a imagem tbem foi alterada, ficando só aquele X.

 

Coloquei um valor no value

 

<input type="file" name="foto" value="<%=rs("foto")%>" size="40">

E mesmo assim, não adiantou,... no bd fica assim images/ sem o nome do arquivo. O que devo fazer, pra quando vou editar um texto, manter a imagem que esta bd ???? Se não der, toda vez que alterar um texto, terei de cadastrar de novo as imagens... :angry:

Compartilhar este post


Link para o post
Compartilhar em outros sites

no campo file voce nao irá conseguir atribuir um value

 

apenas faça updates neste campo se algo for selecionado

Compartilhar este post


Link para o post
Compartilhar em outros sites

tipo assim

 

vai ter o campo file certo?

 

e voce nao pode mudar o valor dele certo/

 

entao, voce sempre testa

 

se o campo file estiver vazio voce nao altera nada e nem o torna vazio, simplesmente nao mexe com ele

 

caso tenha algo selecionado voce faz a alteração

Compartilhar este post


Link para o post
Compartilhar em outros sites

tipo assim

 

vai ter o campo file certo?

 

e voce nao pode mudar o valor dele certo/

 

entao, voce sempre testa

 

se o campo file estiver vazio voce nao altera nada e nem o torna vazio, simplesmente nao mexe com ele

 

caso tenha algo selecionado voce faz a alteração

 

Mario, é o seguinte... o form tem varios campos, ex:

 

nome:

foto:

descrição:

 

Uma hora eu quero alterar apenas o nome, sem alterar a foto e descrição, deixando como estar. Dou um ok, verifico o registro modificado... o nome foi alterado, a descrição permanece do jeito que eu deixei, porem a foto foi alterada sem que eu tenha selecionado... é isso que acontece.

Compartilhar este post


Link para o post
Compartilhar em outros sites

voce tem que modificar seu codigo

 

para os campos texto voce pode atualizar sempre

nos campos file a logica muda um pouco como falei

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz assim, quando for alterar o conteúdo usa uma verificação

 

if upload.form("campo") <> "" then
atualiza campo
else
nao atualiza
end if

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz assim, quando for alterar o conteúdo usa uma verificação

 

if upload.form("campo") <> "" then
atualiza campo
else
nao atualiza
end if

 

Ted, fiz o que pediu... Fiz assim:

 

<%
' 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 ----------------------
idfoto = UploadRequest.Item("id").Item("Value")
idstatus = UploadRequest.Item("idstatus").Item("Value")
nome = UploadRequest.Item("nome").Item("Value")
nome_original = UploadRequest.Item("nome_original").Item("Value")
detalhe = UploadRequest.Item("detalhe").Item("Value")
trailer = UploadRequest.Item("trailer").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")

' 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

if upload.form("foto") <> "" then
atualiza foto
else
nao atualiza
end if

if upload.form("thumb") <> "" then
atualiza thumb
else
nao atualiza
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 foto = '"&cfoto&"' , thumb = '"&cthumb&"' , idstatus = '"&idstatus&"' , nome = '"&nome&"' , 

nome_original = '"&nome_original&"' , detalhe = '"&detalhe&"' , trailer = '"&trailer&"' , diretor = '"&diretor&"' , elenco = 

'"&elenco&"' , duracao = '"&duracao&"' , pais = '"&pais&"' , ano = '"&ano&"' where id = "&idfoto
Conexao.Execute(sql)

' Mostra Mensagem de Confirmação na Tela
Response.write "Filme editado com sucesso!"
%>

Da esse erro:

 

Microsoft VBScript runtime error '800a01a8' 

Object required: 'upload'

Compartilhar este post


Link para o post
Compartilhar em outros sites

ô amigo a você adapta com sua necessidade

 

assim

 

if UploadRequest.form("foto") <> "" then
sql = "update fotos set foto = '"&cfoto&"' , thumb = '"&cthumb&"' , idstatus = '"&idstatus&"' , nome = '"&nome&"' ,nome_original = '"&nome_original&"' , detalhe = '"&detalhe&"' , trailer = '"&trailer&"' , diretor = '"&diretor&"' , elenco ='"&elenco&"' , duracao = '"&duracao&"' , pais = '"&pais&"' , ano = '"&ano&"' where id = "&idfoto
else
sql = "update fotos set thumb = '"&cthumb&"' , idstatus = '"&idstatus&"' , nome = '"&nome&"' ,nome_original = '"&nome_original&"' , detalhe = '"&detalhe&"' , trailer = '"&trailer&"' , diretor = '"&diretor&"' , elenco ='"&elenco&"' , duracao = '"&duracao&"' , pais = '"&pais&"' , ano = '"&ano&"' where id = "&idfoto
end if

Compartilhar este post


Link para o post
Compartilhar em outros sites

é gerado algum erro !?!?!

Compartilhar este post


Link para o post
Compartilhar em outros sites

é gerado algum erro !?!?!

 

Não é gerada nenhum erro... esse cod que o ted colocou, funciona até uma certa parte. Ou seja, quando vou atualizar um filme, querendo modificar apenas o nome, deixando os outros campos como estão, incluindo imagens, da até certo. O nome é modificado, é a imagem do filme permanece, sem aquele X,...mas, quando vou modificar a imagem do filme, coloco a imagem pra upar, clico enviar e da ok, porem quando vou verificar se imagem sofreu alteração, na verdade a imagem continua do jeito que esta estava, não sofrendo alteração.

 

Esse cod entao seguiu até um certo "pedaço do caminho" faltando pouco pra ficar 100%.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você naun esta tentando Ipar um image muito pesada ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Depois de uma batalha agoniante,... não consegui resolver o problema do jeito que eu queria. Então eu dividi em duas partes, uma pagina pra atualizar as imagens e outra pagina pra atualizar o texto, essa foi a unica solução que eu achei. Mas, ta pro gasto.... kkkkk :D

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.