Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal. Estou tentando fazer um sistema de cadastro de empresas. Tenho uma tabela em MySQL desta forma: chave | ativa | empresa | indice | cidade | Começo minha consulta pela cidade com este código - portal.php
<? include("config.php").?>
<?php mysql_select_db($db). $consulta = "SELECT cidade FROM portal GROUP BY cidade". $resultado = mysql_query($consulta). while ($reg = mysql_fetch_array($resultado)) echo"<a href='[http://www.emcondominios.com.br/portal_indice.php?concidade=$reg[cidade]'>$reg[cidade]
](http://www.emcondominios.com.br/portal_indice.php?concidade=%24reg%5Bcidade%5D)". echo "Número de linhas retornadas: ".mysql_num_rows($resultado). mysql_close().?>
<form method="GET" action="http://www.emcondominios.com.br/portal_indice.php">
<fieldset>
<label for="consulta">Buscar:</label>
<input type="text" id="consulta" name="consulta" maxlength="255" />
<input type="submit" value="OK" />
</fieldset>
</form> E encontro os índices de produtos e serviços destas cidades - portal_indice.php <? include("config.php").?>
<?php // Configuração do scriptif (!isset($_GET['concidade'])) {
header("Location: [http://www.meusite.com.br/](http://www.meusite.com.br/)"). exit. }portal WHERE (ativa = 1) AND ((cidade LIKE '%".$busca."%') OR ('%".$busca."%'))". // Executa a consultaif (isset($_GET['pagina'])) {
$pagina = (int)$_GET['pagina']. $pagina = 1. }
$pagina = max(min($paginas, $pagina), 1). $inicio = ($pagina - 1) * $_BS['PorPagina']. // ============================================ // Monta outra consulta MySQL, agora a que fará a busca com paginaçãoportal WHERE (ativa = 1) AND ((cidade LIKE '%".$busca."%') OR ('%".$busca."%')) ORDER BY indice ASC LIMIT ".$inicio.", ".$_BS['PorPagina']. // Executa a consultaecho "<p>Resultados ".min($total, ($inicio + 1))." - ".min($total, ($inicio + $_BS['PorPagina']))." de ".$total." resultados encontrados para '".$_GET['concidade']."'</p>". // <p>Resultados 1 - 20 de 138 resultados encontrados para 'minha busca'</p> echo "<ul>". $indice = $resultado['indice']. $link = 'http://www.emcondominios.com.br/portal_anuncio.php?concidade='.$_GET['concidade'].'&consulta='. $resultado['indice']. echo "<li>". echo '<a href="'.$link.'" indice="'.$indice.'">'.$indice.'</a><br />'. echo "</li>". }
echo "</ul>". // ============================================ // Começa a exibição dos paginadoresif ($total > 0) {
for($n = 1. $n <= $paginas. $n++) {
echo '<a href="?concidade='.$_GET['concidade'].'&pagina='.$n.'">'.$n.'</a> '. }
}?> Até aqui, tudo certo, funcionando bem. Quando seleciono um índice ele deveria mostrar as empresas cadastradas neste índice da cidade selecionado anteriormente. Mas o filtro da cidade se perde e está mostrando todas as empresas de todas as cidades. - portal_anuncio.php <? include("config.php").?>
<?php // Configuração do scriptif (!isset($_GET['consulta'])) {
header("Location: [http://www.meusite.com.br/](http://www.meusite.com.br/)"). exit. }$concidade = $_GET['concidade']. $busca = $_GET['consulta']. portal WHERE (ativa = 1) AND ((indice LIKE '%".$busca."%') OR ('%".$busca."%'))". // Executa a consultaif (isset($_GET['pagina'])) {
$pagina = (int)$_GET['pagina']. $pagina = 1. }
$pagina = max(min($paginas, $pagina), 1). $inicio = ($pagina - 1) * $_BS['PorPagina']. // ============================================ // Monta outra consulta MySQL, agora a que fará a busca com paginaçãoportal WHERE (ativa = 1) AND ((indice LIKE '%".$busca."%') OR ('%".$busca."%')) ORDER BY empresa ASC LIMIT ".$inicio.", ".$_BS['PorPagina']. // Executa a consultaecho "<p>Resultados ".min($total, ($inicio + 1))." - ".min($total, ($inicio + $_BS['PorPagina']))." de ".$total." resultados encontrados para '".$_GET['consulta']."' - '".$_GET['concidade']."'</p>". // <p>Resultados 1 - 20 de 138 resultados encontrados para 'minha busca'</p> echo "<ul>". $empresa = $resultado['empresa']. $link = 'http://www.emcondominios.com.br/portal_anuncio.php?indice='. $resultado['indice']. echo "<li>". echo '<a href="'.$link.'" empresa="'.$empresa.'">'.$empresa.'</a><br />'. echo "</li>". }
echo "</ul>". // ============================================ // Começa a exibição dos paginadoresif ($total > 0) {
for($n = 1. $n <= $paginas. $n++) {
echo '<a href="?consulta='.$_GET['consulta'].'&pagina='.$n.'">'.$n.'</a> '. }
}?> Eu consegui recuperar o GET na cidade mas não sei como usar isso como um filtro no banco de dados. Exemplo do filtro que preciso: São Paulo > Academia > Academia do Joaquim em São Paulo. Espero que tenha conseguido explanar a minha dúvida. Obrigado.Carregando comentários...