Ir para conteúdo

POWERED BY:

Arquivado

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

sr.silva

Excluir arquivos Fisicamente

Recommended Posts

nao entendi

 

voce me mostrou selects e o erro estava em um update

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao entendi

 

voce me mostrou selects e o erro estava em um update

Deixa ver se eu consigo explicar o que acontece, tinha o script pra remover o caminho da imagem do banco de dados que funcionava apenas fazendo um update no campo da foto referida colocando espaço em branco, que originalmente é este:

 

<%
cod = request("cod")
if request("foto") = 1 then
	muda = "ds_foto1"
end if
if request("foto") = 2 then
	muda = "ds_foto2"
end if
if request("foto") = 3 then
	muda = "ds_foto3"
end if
if request("foto") = 4 then
	muda = "ds_foto4"
end if
if request("foto") = 5 then
	muda = "ds_foto5"
end if

str = "Update T01_Imovel set "
str = str & ""& muda &" = ' ' " 
str = str & "WHERE t01_cd_imovel = "& cod &""

set rs = db.execute(str)
response.redirect "foto1.asp?cod="&cod
%>

 

Ai estava precisando excluir as imagens ao deletar as mesmas do BD, então resolvi adaptar este script ao meu, e como algumas coisas não estavam dando muito certo, pedi uma ajuda e o hargon, me deu várias dicas, como por exemplo fazer o retorno do nome da imagem salvo no bd (que é o que o script necessita pra remover fisicamente) utilizando um select e o sctip final ficou assim:

 

<%
dim rs
set rs = db.execute("select * from t01_imovel where t01_cd_imovel = "& Request("cod")&"")
cod = request("cod")
if request("foto") = 1 then
	muda = rs("ds_foto1")
end if
if request("foto") = 2 then
	muda = rs("ds_foto2")
end if
if request("foto") = 3 then
	muda = rs("ds_foto3")
end if
if request("foto") = 4 then
	muda = rs("ds_foto4")
end if
if request("foto") = 5 then
	muda = rs("ds_foto5")
end if

str = "Update T01_Imovel set "
str = str & ""& muda &" = ' ' " 
str = str & "WHERE t01_cd_imovel = "& cod &""

Set Fso = Server.CreateObject("Scripting.FileSystemObject")
Caminho = Server.MapPath("fotos")
If Fso.FileExists(Caminho & "\" & muda) Then
  Fso.DeleteFile(Caminho & "\" & muda)
End If
Set Fso = Nothing

set rs = db.execute(str)
response.redirect "foto1.asp?cod="&cod
%>

Foi aí que começou este problema dos erros, pois a parte do FSO para remover fisicamente funciona perfeito, porem ao executar a query o script dá problema

 

 

Fiz um teste printando:

 

Caminho & "\" & muda

(str)

 

D:\Webs\issad1\adm\fotos\fotos_200898221752.jpg
Update T01_Imovel set fotos_200898221752.jpg = ' ' WHERE t01_cd_imovel = 83

A primeira linha que é referente ao FSO printa perfeitamente do jeito que é para ser mais a segunda não, aí resolvi alterar esta linha no select

 

if request("foto") = 1 then
	muda = "ds_foto1"
end if

E passou a printar assim:

 

D:\Webs\issad1\adm\fotos\ds_foto1
Update T01_Imovel set ds_foto1 = ' ' WHERE t01_cd_imovel = 83

A primeira linha passou a ser informada errado, pois não mostra mais o nome da imagem e a segunda passou a informar certo. Por isso havia colocado a parte do select lá em cima e você não entendeu.. pois pra efeito de testes resolvi modificar e descobri isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo

 

Está correto colocar o arquivo no caminho a excluir fisicamente porem nao está quando o coloca como nome do campo no update

 

ali tem que ser o nome do campo que armazena a foto

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.