Ir para conteúdo

POWERED BY:

Arquivado

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

rd111072

Erro em busca com combos

Recommended Posts

Bom dia meus amigos do Imasters,

 

é o seguinte:

 

estou tentando montar uma busca com 3 combos dinâmicos. O Primeiro combo vai beleza e carrega o segundo. Mas quando seleciono o segundo dá o seguinte erro:

 

Error Type:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'id_quartos ='.

/wordpress/imob/busca.asp, line 71

 

 

O código da busca é o seguinte:

 

<% option explicit %>
<!-- #include file="conexao.asp" -->

<%
'-- ao acessar cookie e response precisamos disso ( no pws ) :
Response.Expires = 0
Response.ExpiresAbsolute = now()-1
Response.AddHeader "Pragma", "no-cache" '-- http 1.0
Response.AddHeader "Cache-Control", "no-cache, must-revalidate" '-- http 1.1
Response.AddHeader "Cache-Control", "private"
Response.Buffer = TRUE

Dim oRs, sSql

'--------------------
Sub carregaTipos()
Dim sID, seleciona 

sSql = " Select * from tb_tipos " 'with ( nolock ) 
Set oRs = oConn.Execute (sSql)
while not ( oRs.EOF )

	sID = trim(cstr(oRs("id")))

	'response.write "grupo=" & vGrupo
	'response.write "id = " & oRs("id") 
	if sID = vTipos then
		seleciona = " selected "
	else
		seleciona = " "
	end if

	'Response.Write( "<a href='busca.asp?grupo=" & oRs("id") & "'>"& oRs("gruposervico") & "</a><br>")
	Response.Write( "<option value='" &sID& "' " & seleciona & " >" &oRs("tipo")& "</option>")
	
	oRs.MoveNext
wend
oRs.Close
Set oRs = Nothing 
End Sub
'--------------------
'--------------------
Sub carregaQuartos( pTipos )
Dim sID, seleciona 
	sSql = " Select * from tb_quartos where id_tipo = " & pTipos & ";" 'with ( nolock ) 
	'Response.Write( " sql = " &sSql& "<br>") 
	Set oRs = oConn.Execute (sSql)
	while not ( oRs.EOF )
		
		sID = trim(cstr(oRs("id")))
		
		if sID = vQuartos then
			seleciona = " selected "
		else
			seleciona = " "
		end if

		'Response.Write( "<a href='busca.asp?grupo=" & request("grupo") & "&espec=" & oRs("id") & "'>"& oRs("especialidades") & "</a><br>")
		Response.Write( "<option value=" &oRs("id")& " " & seleciona & " >" &oRs("quartos")& "</option>")
		oRs.MoveNext
	wend
	oRs.Close
	Set oRs = Nothing 
End Sub
'-------------------
'--------------------
Sub carregaBairros ( pQuartos )
Dim sID, seleciona 
	sSql = " Select * from tb_bairros where id_quartos = " & pQuartos & ";" 'with ( nolock ) 
	'Response.Write( " sql = " &sSql& "<br>") 
	Set oRs = oConn.Execute (sSql)
	while not ( oRs.EOF )
		sID = trim(cstr(oRs("id")))
		if sID = vBairros then
			seleciona = " selected "
		else
			seleciona = " "
		end if
		'Response.Write( "<a href='busca.asp?grupo=" & request("grupo") & "&espec=" & oRs("id") & "'>"& oRs("especialidades") & "</a><br>")
		Response.Write( "<option value=" &oRs("id")& " " & seleciona & " >" &oRs("bairro")& "</option>")
		oRs.MoveNext
	wend
	oRs.Close
	Set oRs = Nothing 
End Sub

'-------------------




'------- pega os valores de retorno :
 
Dim vTipos, vQuartos, vBairros
 


vTipos = Request("pTipos")
vQuartos = Request("pQuartos")
vBairros = Request("pBairros")


%>

O java script que faz o reload é esse:

 

<script language="JavaScript" type="text/JavaScript">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  valor = selObj.options[selObj.selectedIndex].value;
  objeto = selObj.name;

var valorTipos = '<%=vTipos%>';
var valorQuartos = '<%=vQuartos%>';
var valorBairros = '<%=vBairros%>';

	  if (objeto == 'mnTipos') valorTipos = valor;
	  if (objeto == 'mnQuartos') valorQuartos = valor;
	  if (objeto == 'mnBairros') valorBairros = valor;

	
	eval(targ+".location='busca.asp?pTipos="+valorTipos+"&pQuartos="+valorQuartos+"&pBairros="+valorBairros+"'");
	
	
  if (restore) selObj.selectedIndex=0;
}
//-->
</script>

e no form está assim:

 

<form name="form1" action="lista_odonto.asp"  method="post" target="_parent">

		<select name="mnTipos" class="input01" onChange="MM_jumpMenu('self',this,0)">
		  <option value="0">Selecione uma opção</option>
		  <% call carregaTipos %>
		</select>
<br>
<select name="mnQuartos" class="input02" onChange="MM_jumpMenu('self',this,0)">
		  <option value="0" selected>Selecione uma opção</option>
		  <% if vTipos <> "" then call carregaQuartos( vTipos ) end if %>
	</select><br>
		<select name="mnBairros" class="input03" onChange="MM_jumpMenu('self',this,0)">
		  <option value="0" selected>Todas os bairros</option>
		  <%  if vQuartos <> "" then call carregaBairros( vBairros ) end if %>
		</select><br>
		
<input name="listar" type="image" value="Listar" src="img/ok_azul.gif" class="ok01b" alt="Listar">

<br>
</form>
</div>
</body>
</html>
<%
oConn.Close
Set oConn = Nothing


%>

Não estou conseguindo ver aonde está o erro!!!

Alguém sabe?

Compartilhar este post


Link para o post
Compartilhar em outros sites

E ai cara,

 

Subistitua esta linha

 

sSql = " Select * from tb_quartos where id_tipo = " & pTipos & ";"

 

por esta

 

sSql="Select * from tb_quartos where id_tipo="&pTipos&""

 

e ve se funfa

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não amigo,

 

continua o mesmo erro...

 

Para complementar deixa eu passar como está nas tabelas:

 

TB_TIPOS:

 

id Autonumeração

tipo texto

 

TB_QUARTOS:

 

id Autonumeração

quartos número

id_tipo número

 

TB_BAIRROS:

 

id Autonumeração

bairro texto

id_quartos número

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.