PRWEBMaster Postado Setembro 13, 2010 Denunciar Share Postado Setembro 13, 2010 Tudo bem galera?Estou com uma dificuldade em excluir vários registros em uma lista utilizando o CHECKBOX, fiz assim:<form id="form1" name="form1" method="get" action="ef_exclui_itens.asp?id_valores=<%=id_valores%>"> <input name="deleta" type="checkbox" id="id_valores" value=""/></form>Na pagina ef_exclui_itens.asp:id_valores = request.QueryString("id_valores")'CONEXAO BANCODim deleta deleta = Request("deleta") if deleta <> "" thenSQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores IN (" & deleta & ")"conn.execute SQLend ifset deleta = nothingconn.closeQuando seleciono 1 item não exclui, não da erro, só q também quando seleciono 2 itens da o seguinte erro:Microsoft OLE DB Provider for ODBC Drivers error '80040e14'[Microsoft][ODBC SQL Server Driver][sql Server]Line 1: Incorrect syntax near ','./tabelas_precos_hcs/telas/ef_exclui_itens.asp, line 14 Gostaria de saber o que estou fazendo de errado.Muito obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lobismano Postado Setembro 13, 2010 Denunciar Share Postado Setembro 13, 2010 tenta isso.Dim deletadeleta = Replace(Request("deleta"),",","','")if deleta <> "" thenSQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores IN ('" & deleta & "')"conn.execute SQLend ifset deleta = nothingconn.close Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 PRWEBMaster Postado Setembro 14, 2010 Autor Denunciar Share Postado Setembro 14, 2010 Tudo bem lobismano?Fiz a modificação, agora não da mais o erro mais também não exclui o que selecionei.Conforme você pediu para fazer:Dim deleta deleta = Replace(Request("deleta"),",","','") if deleta <> "" thenSQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores IN ('" & deleta & "')"conn.execute SQLend ifset deleta = nothingconn.closeMuito Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 PRWEBMaster Postado Setembro 15, 2010 Autor Denunciar Share Postado Setembro 15, 2010 Bom diaEstou precisando de um help.Muito obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Darkdemo Postado Setembro 15, 2010 Denunciar Share Postado Setembro 15, 2010 Bom dia... você precisará fazer um for para deletar todos os registros selecionados... faça assimDim deletadeleta = Request("deleta")if deleta <> "" thennDeleta = Split(Deleta,",")for i = 0 to UBound(nDeleta)SQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores = " & nDeleta(i)conn.execute SQLNextend ifset deleta = nothingconn.closeAtt; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 PRWEBMaster Postado Setembro 15, 2010 Autor Denunciar Share Postado Setembro 15, 2010 Tudo bem?Coloquei do jeito que você falou, mas não deleta.Muito Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Darkdemo Postado Setembro 15, 2010 Denunciar Share Postado Setembro 15, 2010 De um Response.Write na SQL gerada dentro do For e poste aki como está sendo apresentada..Att; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 PRWEBMaster Postado Setembro 15, 2010 Autor Denunciar Share Postado Setembro 15, 2010 Coloquei assim:Dim deletadeleta = Request("deleta")if deleta <> "" thennDeleta = Split(deleta,",")response.redirect "teste.asp?teste="&deletafor i = 0 to UBound(nDeleta)SQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores = " & nDeleta(i)oConn.execute SQLNextend ifset deleta = nothingoConn.closeMas não funfou.Muito Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Darkdemo Postado Setembro 15, 2010 Denunciar Share Postado Setembro 15, 2010 (editado) então.... eu te pedi para dar um RESPONSE.WRITE... não Response.redirect..........você sabe a diferença entre um e outro ???Assim fica dificil te ajudar né amigo ?Att; Editado Setembro 15, 2010 por Darkdemo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 PRWEBMaster Postado Setembro 15, 2010 Autor Denunciar Share Postado Setembro 15, 2010 Desculpa não tinha prestado atenção a esse detalhe. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 PRWEBMaster Postado Setembro 15, 2010 Autor Denunciar Share Postado Setembro 15, 2010 Eu sou novato em ASP, e to desenvolvendo um sistema super completo, por isso me perco um pouco.Fiz assim:Dim deletadeleta = Request("deleta")if deleta <> "" thennDeleta = Split(deleta,",")for i = 0 to UBound(nDeleta)response.write "deleta"SQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores = " & nDeleta(i)oConn.execute SQLNextend ifset deleta = nothingoConn.closeNão fique nervoso comigo. :unsure: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Darkdemo Postado Setembro 15, 2010 Denunciar Share Postado Setembro 15, 2010 (editado) Amigo.. justamente por você ser novato, você deve PRESTAR MUITA ATENÇÃO ao que lhe é dito...Acima eu te disse para dar um Response.Write na sua SQL.. certo ???Sua SQL é: SQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores = " & nDeleta(i)Certo ??Ou seja, você deve colocar a linha Response.Write(SQL) logo abaixo da linha da SQL... certo ??Foi isso que você fez ??????????Ao fazer o que eu te disse, será mostrado na tela a sua instrucao SQL do jeito que está indo para o BD.. ai você copia o que aparece na tela e posta aki..... não poste o seu código fonte, mas sim o que será impresso na tela....Isso serve para você ver se o comando está indo corretamente para o BD...Só reforçando: PRESTE ATENÇÃO ao que lhe é solicitado ou explicado..Att; Editado Setembro 15, 2010 por Darkdemo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lobismano Postado Setembro 15, 2010 Denunciar Share Postado Setembro 15, 2010 Amigo Acho que o problema é como você está carregando a variavel <%=id_valores%>.Se entendi direito ela está sendo passada vazia e por isso não deleta nada. Seu checkbox chama "deleta" e você tá passando um <%=id_valores%>, além disso ele não tem "value" o que é o mais importante pois nele que tem o valor que você quer deletar.At. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 PRWEBMaster Postado Setembro 16, 2010 Autor Denunciar Share Postado Setembro 16, 2010 Bom dia tudo bem?Então fiz assim agora:<input name="deleta" type="checkbox" value="id_valores" id="id_valores_<%=i%>"/>e na pagina ef_exclui_item.asp:Dim deletadeleta = Request("deleta")if deleta <> "" thennDeleta = Split(Deleta,",")for i = 0 to UBound(nDeleta)SQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores = " & nDeleta(i)oConn.execute SQLNextend ifset deleta = nothingoConn.closeSó que se seleciono 1 item ele exclui todos.Muito obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Darkdemo Postado Setembro 16, 2010 Denunciar Share Postado Setembro 16, 2010 Cara... no valur do checkbox você tem que colocar o NUMERO DO REGISTRO que você qr apagr.. .ou seja....se na listagem onde existem os checkboxes, você esta listando os registros que tem o id de 1 a 5.. deve ficar assim:<input name="deleta" type="checkbox" value="1" id="id_valores_<%=i%>"/><input name="deleta" type="checkbox" value="2" id="id_valores_<%=i%>"/><input name="deleta" type="checkbox" value="3" id="id_valores_<%=i%>"/><input name="deleta" type="checkbox" value="4" id="id_valores_<%=i%>"/><input name="deleta" type="checkbox" value="5" id="id_valores_<%=i%>"/>Assim, quando você recuperar o valor do campo deleta.. ele irá conter os ids dos registros que foram checkados... assim ele só excluirá os que foram marcados...Conselho cara.... estude.. pesquise... e aprenda o básico do HTML e da lógica primeiro... antes de tentar fazer alguma coisa...Att; Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
PRWEBMaster
Tudo bem galera?
Estou com uma dificuldade em excluir vários registros em uma lista utilizando o CHECKBOX, fiz assim:
<form id="form1" name="form1" method="get" action="ef_exclui_itens.asp?id_valores=<%=id_valores%>">
<input name="deleta" type="checkbox" id="id_valores" value=""/>
</form>
Na pagina ef_exclui_itens.asp:
id_valores = request.QueryString("id_valores")
'CONEXAO BANCO
Dim deleta
deleta = Request("deleta")
if deleta <> "" then
SQL = "DELETE FROM TB_PRECOS_HCS WHERE id_valores IN (" & deleta & ")"
conn.execute SQL
end if
set deleta = nothing
conn.close
Quando seleciono 1 item não exclui, não da erro, só q também quando seleciono 2 itens da o seguinte erro:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC SQL Server Driver][sql Server]Line 1: Incorrect syntax near ','.
/tabelas_precos_hcs/telas/ef_exclui_itens.asp, line 14
Gostaria de saber o que estou fazendo de errado.
Muito obrigado
Link para o comentário
Compartilhar em outros sites
14 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.