Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde,
Estou desenvolvendo um sistema de busca onde terão anúncios pagos (terá período inicial e final cadastrado) e anúncios grátis. Os pagos terão destaques. Tenho duas tabelas, empresas e publicidades. Na tabela publicidades, gravo o id da empresa junto com os dados da publicidade.
Estou exibindo os itens certinho, onde tem publicidade dou todo destaque necessário, só que não estou conseguindo reordenar a exibição. Como faço para colocar as empresas com anúncio no topo da pesquisa?
$query_inicial = "SELECT `empresas`.`id`, `empresas`.`fantasia`, `empresas`.`endereco`, `empresas`.`complemento`, `empresas`.`bairro`, `empresas`.`cep`, `cidades`.`uf`, `cidades`.`nome`, `empresas`.`telefone_1`, `empresas`.`telefone_2`, `empresas`.`telefone_3`, `empresas`.`site`, `empresas`.`facebook` FROM `empresas` INNER JOIN `cidades` ON `empresas`.`cidade` = `cidades`.`id`";
$query = $query_inicial . $condicao . $titulo . $ramo . $estado . $cidade;
$sql = $query . " ORDER BY `empresas`.`fantasia` LIMIT " . $inicio . "," . $quantidade;
$qr = mysqli_query($conn, $sql) or die(mysqli_error($conn));
echo '<ul id="lista_resultado">';
if (mysqli_num_rows($qr) > 0) {
$id_item = '';
$id = '';
$ids = '';
$fantasia = '';
$endereco = '';
$complemento = '';
$bairro = '';
$cep = '';
$cidade_uf = '';
$telefone_1 = '';
$telefone_2 = '';
$telefone_3 = '';
$site = '';
$facebook = '';
while ($rs = mysqli_fetch_assoc($qr)) {
$id_item .= $rs['id'] . ',';
$id[$rs['id']] = array(
$ids = $rs['id'] . ',',
$fantasia = $rs['fantasia'],
$endereco = $rs['endereco'],
$complemento = (!empty($rs['complemento'])) ? ', ' . $rs['complemento'] : '',
$bairro = $rs['bairro'],
$cidade_uf = $rs['nome'] . ' - ' . $rs['uf'],
$cep = $rs['cep'],
$telefone_1 = $rs['telefone_1'],
$telefone_2 = (!empty($rs['telefone_2'])) ? ' / ' . $rs['telefone_2'] : '',
$telefone_3 = (!empty($rs['telefone_3'])) ? ' / ' . $rs['telefone_3'] : '',
$site = $rs['site'],
$facebook = $rs['facebook']
);
}
$sql_anuncio = "SELECT `id_empresa`, `imagem_pesquisa` FROM `publicidades` WHERE `id_empresa` IN (" . trim($id_item, ',') . ") AND `data_inicial` >= CURDATE() AND CURDATE() <=`data_final`";
$qr_anuncio = mysqli_query($conn, $sql_anuncio) or die(mysqli_error($conn));
$id_publicidade = [];
$id_empresa = '';
$imagem = '';
while ($rs_anuncio = mysqli_fetch_assoc($qr_anuncio)) {
$id_publicidade[$rs_anuncio['id_empresa']] = array(
$id_empresa = $rs_anuncio['id_empresa'],
$imagem = $rs_anuncio['imagem_pesquisa']
);
}
foreach ( $id as $array => $dados ) {
$classe = '';
foreach ( $id_publicidade as $array_publicidade => $dados_publicidade ) {
$classe = ( trim($dados[0], ',') === $dados_publicidade[0] ) ? 'class="anuncio"' : 'class="convencional"' ;
$imagem = ( trim($dados[0], ',') === $dados_publicidade[0] ) ? '<img class="logo" src="' . URL . 'uploads/' . $dados_publicidade[1] . '" alt="' . $dados[1] . '" />' : '' ;
}
$cep = $dados[6];
$p1 = substr($cep, 0, 2);
$p2 = substr($cep, 2, 3);
$p3 = substr($cep, 5, 3);
$cep = $p1 . '.' . $p2 . '-' . $p3;
echo '
<li ' . $classe . '>
' . $imagem . '
<h2>' . $dados[1] . '</h2>
<p>' . $dados[2] . $dados[3] . ', ' . $dados[4] . ', ' . $dados[5] . '. CEP ' . $cep . '</p>
<p class="url">
<img src="' . URL . 'img/telefone.png" alt="Site da ' . $dados[1] . '" />
' . $dados[7] . $dados[8] . $dados[8] . '
</p>';
if (!empty($dados[10])) {
echo '
<p class="url">
<img src="' . URL . 'img/site.png" alt="Site da ' . $dados[1] . '" />
<a href="' . $dados[10] . '" target="_blank" title="' . $dados[1] . '">' . $dados[10] . '</a>
</p>
';
}
if (!empty($dados[11])) {
echo '
<p class="url">
<img src="' . URL . 'img/facebook.png" alt="Page da ' . $dados[1] . '" />
<a href="[https://www.facebook.com/'](https://www.facebook.com/) . $dados[11] . '" target="_blank" title="' . $dados[11] . '">[https://www.facebook.com/'](https://www.facebook.com/) . $dados[11] . '</a>
</p>
';
}
echo '
</li>
' . PHP_EOL;
}
} else {
echo '<li class="erro">Nenhum registro encontrado...</li>';
}
echo '</ul>';
Obrigado pela atenção.
Carregando comentários...