Ir para conteúdo

Arquivado

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

rulexz

Sistema de Busca Erro

Recommended Posts

Bom, o sistema funciona se eu joga 1 palavra, se eu colocar roupa masculina no caso, ele não acha nada =/

 

 

Busca.asp

<%busca = replace(replace(replace(replace(frmbusca,"+"," "),chr(39),"'"),chr(34),""),"Qual produto deseja comprar?...","")%>
<%catego = replace(replace(replace(replace(request("categoria"),"-"," "),chr(39),"'"),chr(34),""),"Qual produto deseja comprar?...","")%>

<script type="text/javascript">
	//alert('<%=frmbusca%>');
	//alert('<%=catego%>');
</script>

<%
'*** Inserçao de palavra buscada no bd +++
	buscapalavra= request("frmbusca")

	if buscapalavra <> "" then
		buscapalavra = replace(buscapalavra, "+", " ")

		a = split(buscapalavra,"/")

		buscapalavra = a(0)


		if uBound(a) > 0 then
			categoria = a(1)
		else
			categoria = ""
		end if
		

		categoria = replace(categoria, "+", " ")

		frmbusca = buscapalavra

		busca = a(0)

		'*** Verifica se a palavra já está cadastrada. +++
		set verbuscars = objconexao.execute("select pes_palavra from tab_busca_pesquisadas where pes_palavra = '"&buscapalavra&"'")

			if not verbuscars.eof then
		
				'*** Encontra o código da palavra já existente
				set pencontradars = objconexao.execute("select pes_codigo, pes_quantidade from tab_busca_pesquisadas where pes_palavra like '%"& buscapalavra &"%'")
	  
				pencontrada=pencontradars("pes_codigo")
				qtdatual=pencontradars("pes_quantidade")
				qtdsomada=qtdatual+1

					'*** Soma + 1 no banco no item pes_quantidade dessa palavra
					set somamaisrs = objconexao.execute("update tab_busca_pesquisadas set pes_quantidade='" & qtdsomada &"' where pes_codigo="&pencontrada)
			
				pencontradars.close
				set pencontradars=nothing
			
			else
		
				primeira=1
				'*** Faz inclusão da palavra
				set maisrs = objconexao.execute("insert into tab_busca_pesquisadas(pes_palavra, pes_quantidade) values ('"&buscapalavra&"', '"&primeira&"')")

			end if
		
		verbuscars.close
		set verbuscars=nothing
	end if
	
'*** Inserçao de palavra buscada no bd +++
%>

<div class="container center" style="max-width: 1173px;">
<div class="row row-eq-height">

	<div class="col-md-3">
	<div class="lateral box-shadow">
		<!-- TITULO -->
		<%if busca <> "" and catego <> "" then%>
			<h1 class="titulo" style="margin-bottom: 0px;">Busca por "<%=busca%>"</h1>
			<h1 class="titulo cat" style="margin-top: 0px;">Na categoria "<%=catego%>"</h1>
		<%elseif catego <> "" and busca = "" then%>
			<h1 class="titulo">Na categoria "<%=catego%>"</h1>
		<%elseif busca <> "" and catego = "" then%>
			<h1 class="titulo">Busca por "<%=busca%>"</h1>
		<%end if %>

		<!-- CATEGORIAS -->
		<div class="categorias">
			<div class="stressed">Categorias</div>

			<ul>
				<%

				cat_tag = request("categoria")
				palavra_pesquisa = busca
				if busca = "" and cat_tag <> "" then	
					palavra_pesquisa = cat_tag
				end if

				tabelaBusca = left(trim(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(palavra_pesquisa," ","")," ",""),Chr(33),""),Chr(34),""),Chr(35),""),Chr(36),""),Chr(37),""),Chr(38),""),Chr(39),""),Chr(40),""),Chr(41),""),Chr(42),""),Chr(43),""),Chr(44),""),Chr(45),""),Chr(46),""),Chr(47),""),Chr(58),""),Chr(59),""),Chr(60),""),Chr(61),""),Chr(62),""),Chr(63),""),Chr(64),""),Chr(92),""),Chr(96),""),Chr(145),""),Chr(146),""),Chr(147),""),Chr(148),"")),12)


				objconexao.execute("DROP TABLE IF EXISTS busca_" & tabelaBusca)

				if busca <> "" then
					query = "CREATE TEMPORARY TABLE busca_" & tabelaBusca & " SELECT pro_nome, pro_preco, pro_imagem, pro_link, pro_loja, pro_prioridade, cat_codigo FROM ( 		SELECT pro_codigo, pro_nome, pro_preco, pro_imagem, pro_link, pro_loja, cat_codigo, 1 As pro_prioridade 		FROM tab_produtos_xml 		WHERE pro_tags LIKE '%" & busca & ",%' 	UNION 			SELECT pro_codigo, pro_nome, pro_preco, pro_imagem, pro_link, pro_loja, cat_codigo, 2 As pro_prioridade 			FROM tab_produtos_xml 			WHERE cat_codigo IN ( 				SELECT N1.cat_codigo 				FROM tab_categorias_xml AS N1 				WHERE N1.cat_tag LIKE '" & busca & "' OR  					N1.cat_codigo IN (SELECT N2.cat_codigo FROM tab_categorias_xml AS N2 WHERE N2.cat_tag LIKE '" & busca & "') OR 					N1.cat_codigo IN (SELECT N3.cat_codigo FROM tab_categorias_xml AS N3 WHERE N3.cat_pai IN (SELECT N22.cat_codigo FROM tab_categorias_xml AS N22 WHERE N22.cat_tag LIKE '" & busca & "'))) 	UNION 		SELECT pro_codigo, pro_nome, pro_preco, pro_imagem, pro_link, pro_loja, cat_codigo, 3 As pro_prioridade 		FROM tab_produtos_xml 		WHERE pro_nome LIKE '%" & busca & "%' ) AS BUSCA GROUP BY pro_codigo ORDER BY pro_prioridade, cat_codigo, pro_nome"
				else
					query = "CREATE TEMPORARY TABLE busca_" & tabelaBusca & " SELECT pro_codigo, pro_nome, pro_preco, pro_imagem, pro_link, pro_loja, 1 As pro_prioridade, cat_codigo FROM tab_produtos_xml WHERE cat_codigo IN ( 	SELECT N1.cat_codigo 	FROM tab_categorias_xml AS N1 	WHERE N1.cat_tag LIKE '" & cat_tag & "' OR  		N1.cat_codigo IN (SELECT N2.cat_codigo FROM tab_categorias_xml AS N2 WHERE N2.cat_tag LIKE '" & cat_tag & "') OR 		N1.cat_codigo IN (SELECT N3.cat_codigo FROM tab_categorias_xml AS N3 WHERE N3.cat_pai IN (SELECT N22.cat_codigo FROM tab_categorias_xml AS N22 WHERE N22.cat_tag LIKE '" & cat_tag & "')) 		) OR pro_nome LIKE (SELECT CONCAT('%', cat_nome, '%') FROM tab_categorias_xml WHERE cat_tag LIKE '" & cat_tag & "') ORDER BY cat_codigo, pro_nome"
				end if

				objconexao.execute(query)

				set cntProdutos = objconexao.execute("SELECT COUNT(pro_nome), MIN(pro_preco), MAX(pro_preco) FROM busca_" & tabelaBusca)

				allCategories = CInt(cntProdutos(0))
				minPrice = cntProdutos(1)
				maxPrice = cntProdutos(2)

				if allCategories = 0 then
					allCategories = 0
					minPrice = 0
					maxPrice = 0
				end if

				
				preco_minimo = Replace(Round(minPrice,0), ",", ".")
				preco_maximo = Replace(Round(maxPrice, 0)+1, ",", ".")

				labelMinimo = preco_minimo
				labelMaximo = preco_maximo


				If request("pmin") <> "" then
					labelMinimo =request("pmin")
					labelMinimo = Replace(Round(labelMinimo, 0), ",", ".")
				end if

				If request("pmax") <> "" then
					labelMaximo =request("pmax")
					labelMaximo = Replace(Round(labelMaximo, 0) + 1, ",", ".")
				end if	


				cntProdutos.close()
				set cntProdutos = Nothing

				all_url = Request.ServerVariables("PATH_INFO") & "?pi=busca"
				If request("frmbusca") <> "" then
					all_url = all_url & "&frmbusca=" & request("frmbusca")
				elseif request("categoria") <> "" then
					all_url = all_url & "&categoria=" & request("categoria")
				end if

				%>
				<li <%if request("categoria")="" then response.write "class=""active"""%>><a href="<%=all_url%>">Todas as Categorias <span>(<%=allCategories%>)</span></a></li>
				<!--<li><a href="#">Celular <span>(10)</span></a></li>
				<li><a href="#">Moda Masculina <span>(10)</span></a></li>
				<li><a href="#">Moda Feminina <span>(10)</span></a></li>
				<li><a href="#">Moda para Bebês <span>(10)</span></a></li>
				<li><a href="#">Eletrônicos <span>(10)</span></a></li>
				<li><a href="#">Informática <span>(10)</span></a></li>
				<li><a href="#">Celular <span>(10)</span></a></li>-->
				<%
				query = "SELECT CAT.cat_tag, CAT.cat_nome, COUNT(BSC.pro_nome) FROM tab_categorias_xml AS CAT RIGHT JOIN 	busca_" & tabelaBusca & " AS BSC ON (CAT.cat_codigo=BSC.cat_codigo) GROUP BY CAT.cat_codigo ORDER BY COUNT(BSC.pro_nome) DESC"

				set cntProdutos = objconexao.execute(query)

				if not cntProdutos.EOF then
				do until cntProdutos.EOF
					tag = cntProdutos(0)
					nome = cntProdutos(1)
					quantidade = cntProdutos(2)
					url = Request.ServerVariables("PATH_INFO") & "?"
					For Each qs In Split(Request.ServerVariables("QUERY_STRING"), "&")
						If not Instr(1, qs, "categoria") > 0 then
							url = url & qs & "&"
						end if
					Next
					url = Left(url, Len(url) -1 )
					url = url & "&categoria=" & tag


					%><li <%if request("categoria")=tag and request("categoria")<>"" then response.write "class=""active"""%>><a href="<%=url%>"><%=nome%> <span>(<%=quantidade%>)</span></a></li><%

					cntProdutos.moveNext
				loop
				end if
				cntProdutos.close()
				set cntProdutos = Nothing

				%>
			</ul>
		</div>

		<!-- PALAVRA-CHAVE -->
		<div class="palavra-chave">
			<div class="stressed">Palavra-Chave</div>

			<input type="text" name="filtrobusca" value="<%=busca%>" />	
		</div>

		<!--
		For Each i In Request.ServerVariables

			response.write "<br />++++++++++++++++++++++++++++"
			response.write i
			response.write "<br />===="
			response.write Request.ServerVariables(i)
			response.write "<br />"
		Next-->

		<!-- FILTROS -->
		<div class="precos">
			<div class="stressed">Preço</div>			

			<div style="padding: 0 20px; margin-top: 20px;">
				<div id="slider-range"></div>
				
				<div style="height: 70px; margin-top: 10px;">
					<div class="counter">
						<label for="amount1">Mínimo</label>
						<input type="text" id="amount1" />
					</div>

					<div class="counter">
						<label for="amount2">Máximo</label>
						<input type="text" id="amount2" />
					</div>
				</div>
			</div>
		</div>

		<div class="new-divide"></div>

		<a href="#" id="filtrar">Filtrar</a>
	</div>	
	</div>
	<div class="col-md-9">
	<div class="resultados container-fluid">
	<!-- NÃO HÁ RESULTADO -->
	<%
	if not allCategories > 0 then
		%>

		<div class="col-xs-12">
		<div class="error item box-shadow">
			Sua pesquisa não retornou resultados  :(
		</div>
		</div>

	<!-- HÁ RESULTADO -->
	<%
	else
		if cat_tag = "" then cat_tag = "%"

		query = "SELECT BSC.pro_nome, BSC.pro_preco, BSC.pro_imagem, BSC.pro_link, BSC.pro_loja  FROM busca_" & tabelaBusca & " AS BSC LEFT JOIN 	tab_categorias_xml AS CAT ON (BSC.cat_codigo=CAT.cat_codigo) WHERE (BSC.pro_preco BETWEEN " & labelMinimo & " AND " & labelMaximo & ")" '" AND 	(CAT.cat_tag LIKE '" & cat_tag & "')"

response.write "<script>" & query &  "</script>"

		set produtos = objconexao.execute(query)


		y = -1
		if not produtos.EOF then
		do until produtos.EOF
			nome = produtos(0)
			preco = produtos(1)
			imagem = produtos(2)
			link = produtos(3)
			loja = produtos(4)

			y = y + 1
			if y = 0 then
				response.write "<div class='row'>"
			end if
	%>
		<div class="col-md-3">
		<a class="item box-shadow" href="<%=link%>" rel="nofollow external" target="_blank">
			<div class="imagem block"><img class="img-responsive centered" src="<%=imagem%>"/></div>
			<div class="nome block"><div class="centered"><%=ShortenString(nome, 60)%></div></div>
			<div class="preco">R$ <%=preco%></div>
			<div class="loja"><%=loja%></div>
		</a>
		</div>
	<%
			if y = 3 then
				response.write "</div>"
				y = -1
			end if

			produtos.moveNext
		loop

		produtos.close()
		set produtos = Nothing
		end if
	end if
	%>
	</div>	
	</div>

</div>
</div>

<script type="text/javascript">
	//alert("<%=preco_minimo%>");
	//alert("<%=preco_maximo%>");

	$(function() {
		$( "#slider-range" ).slider({
			range: true,
			min: <%=preco_minimo%>,
			max: <%=preco_maximo%>,
			values: [ <%=labelMinimo%>, <%=labelMaximo%> ],
			slide: function( event, ui ) {
				$( "#amount1" ).val( ui.values[ 0 ] );
				$( "#amount2" ).val( ui.values[ 1 ] );
			}
		});
		$( "#amount1" ).val( $( "#slider-range" ).slider( "values", 0 ) );
		$( "#amount2" ).val( $( "#slider-range" ).slider( "values", 1 ) );
	});

	$(document).ready(function(){
		$("#filtrar").click(function(){
			var final = "";
			
			if ($("input[name=filtrobusca]").val() !=""){
				//palavra-chave
				value = "&frmbusca=" + $("input[name=filtrobusca]").val();
				final += value;
			}

			//preço mínimo
			value = "&pmin=" + $("input[id=amount1]").val();
			final += value;

			//preço máximo
			value = "&pmax=" + $("input[id=amount2]").val();
			final += value;

			location.href = "capa.asp?pi=busca" + final;
			return false;
		});
	});
</script>

Busca.js

$(document).ready(function(){

	$('#busca_produto').click(function(){
		$('input[name=frmonde]').val(1);
		$('fieldset.onde').css('display','none');
		$('#ondeatual').html('lalalala');
		return false;
	});

	//$('#busca_loja').click(function(){
		//$('input[name=frmonde]').val(2);
		//$('fieldset.onde').css('display','none');
		//$('#ondeatual').html('lalala');
		//return false;
	//});

	$('#busca_parceiros').click(function(){
		$('input[name=frmonde]').val(3);
		$('fieldset.onde').css('display','none');
		$('#ondeatual').html('lalala');
		return false;
	});

	$(document.body).click(function(){
		if (!($('fieldset.onde')).has(this).length) {
			$('fieldset.onde').hide();
		}
	});

	$('form.busca input[type=submit]').click(function() {
		if ( $('input[name=frmbusca]').val()=='' || $('input[name=frmbusca]').val()=='lalala?...' ) {
		}
		else {
			alert('GIVE TO ME I WORTH IT');
			window.location = '?pi=busca&frmbusca=' + $('input[name=frmbusca]').val() + '&frmonde=' + $('input[name=frmonde]').val();
		}
		return false;
	});

});

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele gera algum erro ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Descomplica Consultoria
      Oi Pessoal, preciso de ajuda com um portfolio academico
    • Por 4Unknow
      Bom dia comunidade Imasters.

      Venho aqui tratar de um problema dúvida que estou tendo com um layout que estou tentando usar o formulário php dele.
      Quando clico em enviar ele me enviar para um arquivo .php  (assets/vendor/simple-forms/sendmail.php)

      Ele não envia o e-mail, acredito que deveria aparecer uma mensagem que o contato foi enviado corretamente.
      Vou deixar os arquivos aqui em anexo quem puder me ajudar nessa, ficaria muito grato.
       
      Link Website (wetransfer.com)
    • Por Dcdbbvb
      Faça um código que deverá ter uma matriz de qualquer tamanho(Você define o tamanho) no qual o usuário irá digitar os números que serão armazenados na matriz. Construa uma função que deverá somar todos os números digitados. No final o programa mostrará a matriz e o valor total da somatória.
       
      por favorrrr alguém me ajuda
    • Por lotthaus
      Alguém poderia fazer essa atividade para eu ajudar um amigo ?

    • Por Geralt96
      Bom dia. Alguém pode me dá uma ajuda pra desenvolver essa questão, por gentileza?

      Aqui está ela: https://projecteuler.net/problem=6

      A soma dos quadrados dos primeiros dez números naturais é: 1² + 2² + ... 10² = 385...
      O quadrado da soma dos dez primeiros números naturais é: (1+2+ ... 10)² = 55² = 3025...
      Portanto, a diferença entre a soma dos quadrados dos primeiros dez números naturais e o quadrado da soma é: 3025 - 385 = 2640.
      Encontre a diferença entre a soma dos quadrados dos primeiros cem números naturais e o quadrado da soma.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.