PHP - ayuda paginar resultado de busqueda

 
Vista:

ayuda paginar resultado de busqueda

Publicado por Diego Pino (1 intervención) el 27/11/2006 16:17:03
Tengo un problema con el siguiente codigo. tengo un formulario en otra web, con un campo de texto que se llama busqueda y un boton que manda a llamar a este php llamado paginacion.php. cuando pongo SELECT titulo FROM articulos WHERE titulo LIKE '%$busqueda%' me despliega otras cosas, en mi base tengo 9 nombres que tienen CPU modelo 41, CPU mod 54..etc
son 9 haci que en el paginado me debe arrojar 5 resultados abajo otro link para ir a la siguente paginacion y mostrar el resto que serian 4.
como hago para que funcione mi busqueda de la condicion like y me lo pagine correctamente??

<?
function conectar()
{
$base_de_datos = "busqueda";
$db_usuario = "root";
$db_password = "55a4f4s4s";

if (!($link = mysql_connect("localhost", $db_usuario, $db_password)))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db($base_de_datos, $link))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $link;
}

function conectar()
{
$base_de_datos = "busqueda";
$db_usuario = "root";
$db_password = "654";

if (!($link = mysql_connect("localhost", $db_usuario, $db_password)))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db($base_de_datos, $link))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $link;
}

$db = conectar();

$registros = 5;

if (!$pagina) {
$inicio = 0;
$pagina = 1;
}
else {
$inicio = ($pagina - 1) * $registros;
}

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Noticias</title>
<style>
body { font-family: arial; font-size:12px}
</style>
</head>

<body>
<?
$resultados = mysql_query("SELECT titulo FROM articulos WHERE titulo LIKE '%$busqueda%' ");
$total_registros = mysql_num_rows($resultados);
$resultados = mysql_query("SELECT titulo FROM articulos WHERE titulo LIKE '%$busqueda%' ORDER BY titulo DESC LIMIT $inicio, $registros");
$total_paginas = ceil($total_registros / $registros);

if ($articulos = mysql_fetch_array ($resultados)) {


do{
echo "<b>".$articulos["titulo"]."</b><br>";


} while ($articulos = mysql_fetch_array ($resultados));

}else {

redireccionar();
}


mysql_free_result($resultados);

if($total_registros) {

echo "<center>";

if(($pagina - 1) > 0) {
echo "<a href='paginacion.php?pagina=".($pagina-1)."'>< Anterior</a> ";
}

for ($i=1; $i<=$total_paginas; $i++){
if ($pagina == $i)
echo "<b>".$pagina."</b> ";
else
echo "<a href='paginacion.php?pagina=$i'>$i</a> ";
}

if(($pagina + 1)<=$total_paginas) {
echo " <a href='paginacion.php?pagina=".($pagina+1)."'>Siguiente ></a>";
}

echo "</center>";

}
?>
</body>
</html>
<? mysql_close($db);?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder