RapidFire Postado Maio 5, 2008 Denunciar Share Postado Maio 5, 2008 Olá.alguém poderia me dar um help?O que estou fazendo de errado?<%str_cidade = "AMERICANA, CAMPINAS, BARÃO GERALDO"Set ObjRS = Server.CreateObject("ADODB.RecordSet")SQL = "SELECT * FROM tb_cliente WHERE cliente_ativo =''1''" if str_cidade <> "" thendim arraycidadearraycidade = split(str_cidade,",",-1,1)for i = LBound( arraycidade ) to UBound (arraycidade)if i <> UBound ( arraycidade ) thenseparador = ","elseseparador = ""end ifjunta5 = junta5 & "''"&arraycidade( i )&"''"&separador&""nextsql = sql & " and cidade in ("&junta5&")"end if Set ObjRS = ObjCon.Execute(SQL)%> <%Do Until ObjRS.EOF%><%=ObjRS("id_cliente")%> - <%=ObjRS("cliente")%> - <%=ObjRS("cidade")%><br /><%ObjRS.MoveNextLoop%>Microsoft JET Database Engine error '80040e14' Syntax error (missing operator) in query expression 'cliente_ativo =''1'' and cidade in (''AMERICANA'','' CAMPINAS'','' BARÃO GERALDO'')'. /adm_cliebte/2.asp, line 35 Agradeço a ajuda. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jow Postado Maio 6, 2008 Denunciar Share Postado Maio 6, 2008 Cara tenta assimstr_cidade = ("AMERICANA", "CAMPINAS", "BARÃO GERALDO") ou sem os parentes str_cidade = "AMERICANA", "CAMPINAS", "BARÃO GERALDO" Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RapidFire Postado Maio 6, 2008 Autor Denunciar Share Postado Maio 6, 2008 Consegui em partes.O Código agora esta funcionando legal com apenas um problema, o mais importante.Ele só lista as cidades que estão em primeiro. Ele não passa para o resgistro seguinte que esta depois da virgula.Exemplo:AMERICANA, BARAO GERALDO, CAMPINASEle só esta me trazendo a listagem dos registros que tem a cidade de AMERICANA.Se caso a primeira cidade seja NOVA ODESSA, ele não percorre depois da virgula para me listar as outras cidades depois da virgula como HORTOLANDIA, SUMARE.Exemplo:NOVA ODESSA, HORTOLANDIA, SUMAREÉ possível fazer isso?Se puderem me ajudar, ficarei muito grato.<% 'Option Explicit %> <!--#include file="../includes/conexao/conexao.asp"--> <% dim ObjRS_campanha, SQL, ObjRS_cidade, ObjRS_cliente%> <% Call abre_conexao %> <% str_id_cliente = Request("id_cliente") %> <% Set ObjRS_campanha = Server.CreateObject("ADODB.RecordSet") SQL = "SELECT * FROM tb_cadastro WHERE id_cliente = '"& str_id_cliente &"'" Set ObjRS_campanha = ObjCon.Execute(SQL) if Not ObjRS_campanha.EOF Then str_cidade = ObjRS_campanha("cidade") End if Set ObjRS = Server.CreateObject("ADODB.RecordSet") SQL = "SELECT * FROM tb_clientes WHERE cliente_ativo='1'" if str_cidade <> "" Then Dim arraycidade arraycidade = split(str_cidade,",",-1,1) For i = LBound(arraycidade) To UBound (arraycidade) if i <> UBound (arraycidade) Then separador = "," Else separador = "" End if if i > 0 Then junta5 = junta5 &"'"& mid(arraycidade(i),1) &"'"& separador Else junta5 = junta5 &"'"& arraycidade(i) &"'"& separador End if Next SQL = SQL & " and cidade in ("& junta5 &")" End if Set ObjRS = ObjCon.Execute(SQL) %> <% Do Until ObjRS.EOF %> <%=ObjRS("id_cliente")%> - <%=ObjRS("nome")%> - <%=ObjRS("cidade")%><br /> <% ObjRS.MoveNext Loop %> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 webdeveloper Postado Maio 8, 2008 Denunciar Share Postado Maio 8, 2008 Da um Response.Write na Query e veja como ela está ficando. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Visitante Postado Junho 9, 2008 Denunciar Share Postado Junho 9, 2008 Rapaiz, você pode usar só assim!x = split(str_cidade,",")for i = 0 to ubound(x) response.write(x(i)&"<br/>")nextPra pegar os valores que você quer, não tem erro... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
RapidFire
Olá.
alguém poderia me dar um help?
O que estou fazendo de errado?
<%
str_cidade = "AMERICANA, CAMPINAS, BARÃO GERALDO"
Set ObjRS = Server.CreateObject("ADODB.RecordSet")
SQL = "SELECT * FROM tb_cliente WHERE cliente_ativo =''1''"
if str_cidade <> "" then
dim arraycidade
arraycidade = split(str_cidade,",",-1,1)
for i = LBound( arraycidade ) to UBound (arraycidade)
if i <> UBound ( arraycidade ) then
separador = ","
else
separador = ""
end if
junta5 = junta5 & "''"&arraycidade( i )&"''"&separador&""
next
sql = sql & " and cidade in ("&junta5&")"
end if
Set ObjRS = ObjCon.Execute(SQL)
%>
<%
Do Until ObjRS.EOF
%>
<%=ObjRS("id_cliente")%> - <%=ObjRS("cliente")%> - <%=ObjRS("cidade")%><br />
<%
ObjRS.MoveNext
Loop
%>
Microsoft JET Database Engine error '80040e14'
Syntax error (missing operator) in query expression 'cliente_ativo =''1'' and cidade in (''AMERICANA'','' CAMPINAS'','' BARÃO GERALDO'')'.
/adm_cliebte/2.asp, line 35
Agradeço a ajuda.
Link para o comentário
Compartilhar em outros sites
4 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.