Bom galera, com muito sacrificio, eu consegui fazer um sisteminha de busca que gera os links das noticias para os resultados, pesquisei e estudei muito para conseguir, porem eu queria fazer com que apareça apenas 20 resultados por pagina.
Bom muitos aqui devem saber como funciona para aparecer da seguinte maneira << Anterior 1 2 3 4 5 Proxima >>
É só isso que eu preciso!
A baixo segue meu codigo
o banco de dados ----------->
CREATE TABLE `noticia` (
`id` int(11) NOT NULL auto_increment,
`titulo` varchar(100) default NULL,
`sessao` varchar(25) default NULL,
`noticia` text NOT NULL,
`video` text NOT NULL,
`data_hora` timestamp NOT NULL default CURRENT_TIMESTAMP,
`ip` varchar(50) NOT NULL,
`publicado` char(1) default 'N',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=27 ;
------------------------------------------------------>
O formulario
<form name="frmBusca" method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>?a=buscar" >
<table>
<tr>
<td>Busca no site: </td>
<td><label>
<input name="palavra" type="text" id="palavra" size="10" style="border:none" height="15"/>
</label></td>
<td><label>
<input name="ok" type="submit" id="ok" value="ok" align="top" height="18" width="18" style="background-color:#C40000; font:'Trebuchet MS', Arial, Helvetica, sans-serif; color:#FFF; border:none; font-size:13px "/>
</label></td>
</tr>
</table>
</form>
------------------------------------------------------>
Nesse script pega o resultado do formulario e exibe-os como um link, para cada noticia
São esses links que eu quero paginar
<?php
//conexão com banco de dados
include "conexao.php";
// Recuperamos a ação enviada pelo formulário
$a = $_GET['a'];
// Verificamos se a ação é de busca
if ($a == "buscar") {
// Pegamos a palavra
$palavra = trim($_POST['palavra']);
// Verificamos no banco de dados as noticias equivalentes a palavra digitada
$sql = mysql_query("SELECT * FROM noticia WHERE noticia LIKE '%".$palavra."%' ORDER BY titulo");
// Descobrimos o total de registros encontrados
$numRegistros = mysql_num_rows($sql);
// Se houver pelo menos um registro, exibe-o
if ($numRegistros != 0) {
// Exibe o titulo da noticia como um link
while ($resultado = mysql_fetch_object($sql)) {
echo "<a href='resultados_da_busca.php?id={$resultado->id}'>{$resultado->titulo}</a>";
echo "<br /> <br />";
echo "<hr width=\"490\" align=\"center\" color=\"#CCCCCC\"/>";
}
// Se não houver registros
} else {
echo "Nenhuma noticia foi encontrada com a palavra ".$palavra."<br /><br />";
}
}
?>
------------------------------------------------------>
Quando clicar no link gerado pelo script acima, ele direciona para essa pagina
resultados_da_busca.php
Ela mostra o conteudo da noticia clicada apenas.
<?php
//conexão com o banco
include "conexao.php";
$id = (int)$_GET['id'];//recebe o id passado na url
$sql = mysql_query("SELECT * FROM noticia WHERE id={$id}") or die (mysql_error());
$resultado = mysql_fetch_object($sql);
//aki você exibe os dados
echo "<font color='#111111' face='Trebuchet MS, Arial, Helvetica, sans-serif' size='3'/><b>$resultado->titulo</b></p><font color='#444444' face='Trebuchet MS, Arial, Helvetica, sans-serif' size='2'/> <font color='#444444' face='Trebuchet MS, Arial, Helvetica, sans-serif' size='2'/><br />$resultado->noticia<center><br />$resultado->video</center><hr width='490' align='center' color='#E5E5E5'/><br />";
?>
Bom galera, espero que não seja um pouco demais, mas estou aprendendo php e ainda não consegui incluir a paginação mesmo vendo outros topicos.
valeu, abraço!!!