Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou desenvolvendo uma página em PHP e usando banco MySQL e tenho tudo já pronto, só necessito terminar de construir o mecanismo de busca.
Segue abaixo o código da pagina que apresenta problemas, quando executo a busca sempre tenho os seguintes erros:
Warning: mysql_result() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-12.1\www\www.meusite.com.br\includes\teste_bi.php on line 37
Resultados - de resultados encontrados para 'testando busca'
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-12.1\www\www.meusite.com.br\includes\teste_bi.php on line 66
<?php
$_BS['PorPagina'] = 20;
// Conexão com o MySQL
$_BS['MySQL']['servidor'] = 'localhost';
$_BS['MySQL']['usuario'] = 'root';
$_BS['MySQL']['senha'] = '';
$_BS['MySQL']['banco'] = 'meusdados';
mysql_connect($_BS['MySQL']['servidor'], $_BS['MySQL']['usuario'], $_BS['MySQL']['senha']);
mysql_select_db($_BS['MySQL']['banco']);
// Verifica se foi feita alguma busca
if (!isset($_GET['buscar1'])) {
header("Location: [http://127.0.0.1/www.meusite.com.br/](http://127.0.0.1/www.meusite.com.br/)");
exit;
}
// Salva o que foi buscado em uma variável
$busca = $_GET['buscar1'];
$busca = mysql_real_escape_string($busca);
// Monta a consulta MySQL para saber quantos registros serão encontrados
$sql = "SELECT COUNT(*) AS total FROM noticia WHERE (ativa = 1) AND ((titulo LIKE '%".$busca."%') OR ('%".$busca."%'))";
// Executa a consulta
$query = mysql_query($sql);
// Salva o valor da coluna 'total', do primeiro registro encontrado pela consulta
$total = mysql_result($query, 0, 'total');
// Calcula o máximo de paginas
$paginas = ceil($total / $_BS['PorPagina']);
if (isset($_GET['pagina'])) {
$pagina = (int)$_GET['pagina'];$pagina = 1;
}
$pagina = max(min($paginas, $pagina), 1);
$inicio = ($pagina - 1) * $_BS['PorPagina'];
$sql = "SELECT * FROM `noticia` WHERE (`ativa` = 1) AND ((`titulo` LIKE '%".$busca."%') OR ('%".$busca."%')) ORDER BY `data_cad` DESC LIMIT ".$inicio.", ".$_BS['PorPagina'];// Começa a exibição dos resultados
echo "<p>Resultados ".min($total, ($inicio + 1))." - ".min($total, ($inicio + $_BS['PorPagina']))." de ".$total." resultados encontrados para '".$_GET['buscar1']."'</p>";
echo "<ul>";$titulo = $resultado['titulo'];
$texto = $resultado['noticia'];
$link = '[http://127.0.0.1/www.meusite.com.br/](http://127.0.0.1/www.meusite.com.br/)includes/teste.php' . $resultado['idNoticia'];
echo "<li>";
echo '<a href="'.$link.'" title="'.$titulo.'">'.$titulo.'</a><br />';
echo date('d/m/Y H:i', strtotime($resultado['data_cad']));
echo '<p>'.$texto.'</p>';
echo '<a href="'.$link.'" title="'.$titulo.'">'.$link.'</a>';
echo "</li>";
}
echo "</ul>";
if ($total > 0) {
for($n = 1; $n <= $paginas; $n++) {
echo '<a href="?buscar1='.$_GET['bucar1'].'&pagina='.$n.'">'.$n.'</a> ';
}
}
?>
Não consegui identificar o que está ocorrendo, por isso recorri a vocês.
Desde já agradeço quem tiver a boa vontade de ajudar :yes:
Carregando comentários...