Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/08/2005, 14:16
gabyrsh
 
Fecha de Ingreso: mayo-2005
Mensajes: 257
Antigüedad: 18 años, 11 meses
Puntos: 1
Editar el siguiente Codigo de BUSQUEDA SQL

HOla chicos, gracias por todo la informacion proporcionada. Mi pregunta es la sieguien. Con todo lo que lei aca pude hacer el siguiente codigo, modifique para que en ves de listar todo, busque palabras de algun casillero en especial, use el comando LIKE. La duda es la siguiente, El script funciona correctamente cuando busco algo que se encuentre pero cuando la busqueda no encuentra nada, NO SE LOGRA IMPRIMIR (NO SE HA ENCONTRADO EL REGISTRO) y solo imprime la paginacion. PrUEBO Y PRUEBO y no puedo hacerlo. PODRIAN AYUDARME

<?php
################################################## ######
## PAGINAR REGISTROS
## POR: Marco A. Castillo
## EMAIL: [email protected]
################################################## ######

# Funcion para conectar a la base de datos
function conectar($host,$user,$pass,$db){
$link = @mysql_connect($host,$user,$pass) or die("Error Conectando a la Base de datos");
@mysql_select_db($db,$link) or die("Error Seleccionando base de datos.");
return $link;
}

$host = "localhost";
$user = "gabriel";
$pass = "mipass";
$db = "buscar";
$buscar="pirulo";
$criterio=" where cdescripcion like '%" . $buscar . "%'";

# Se crea la variable $link que es para identificar la coneccion
# a la base de datos
$link = conectar($host,$user,$pass,$db);

# aqui colocan la tabla que se utilizara para
# extraer los registros y paginarlos
$tabla = "descargas";

# aqui se extrae la cantidad de registros totales
$rsC = mysql_query("Select count(*) from ".$tabla);
$resultC = mysql_fetch_array($rsC);
$count = $resultC[0];

# Aqui se pone la cantidad de registros por pagina
# que se quieren mostrar
$hasta = 1;

if($pag==""){
$desde = 0;
$pag = 1;
}
else{
$pag = $_GET["pag"];
$pagS = $pag - 1;
$desde = $hasta * $pagS;
}


$rs = mysql_query("select * from ".$tabla.$criterio." limit $desde,$hasta");

if($count!=0){


while($result=mysql_fetch_array($rs)){
# Aqui colocan su tabla html y sus datos a mostrar
# solo se usa el array $result[""] y entre comillas
# el nombre de la celda a mostrar.
echo $result["cdescripcion"]."<br>\n";
# fin del despliegue personalizado.

}
}
else{
echo "No tenemos registros.";
}
mysql_close($link);




# aqui se llama a la funcion que muestra los links por paginas
# la variable $extra_variables es para anexar mas variables al url
# si es necesario para los querys que hagan.
# Solo se debe concatenar los datos nombre1=valor1&nombre2=value2
# NOTA: puede ubicar en cualquier parte de su codigo esta funcion
# para que aparesca dentro de la celda que desee.
# link totales es una variable al ser definida le dices a la funcion
# cuantos links quieres que aparescan por pantalla ya que si tienes
# 100 paginas no deberas ver los 100 links y solo muestres los necesarios
$link_totales = 4;
# se llama la funcion paginar
# los links si tiene un css podran tomar la estructura y color que le pongas
## Inicia Paginador
paginar($count,$hasta,$pag,$link_totales,$extra_va riables);

# Funcion paginar
# Inicia
function paginar($count,$hasta,$pag,$link_totales,$extra_va riables){

if($link_totales==1)$link_totales=2;
$links = $count / $hasta;
$arriba = $link_totales - 2;
$abajo = $pag - 1;
if($abajo==0)$abajo = 1;
$temp_r = $links - $pag;
if($temp_r>=$arriba){
$link_break = $pag + $arriba;
}
else{
$link_break = $links;
$abajo = $pag + 1 - $arriba;
if($pag==$links-1)$abajo = $pag - $arriba;
if($pag==$links)$abajo = $pag - 1 - $arriba;
}

if($pag==1)$link_break = $link_totales;
if($abajo==0)$abajo=1;
if(strlen($extra_variables)!=0) $extra_variables = "&".$extra_variables;

if($pag==1){
$anterior = 1;
}
else{
$anterior = $pag - 1;
}
if($pag!=1){
echo "<a href=".$_SERVER['PHP_SELF']."?pag=".$anterior.$extra_variables."><< Anterior | </a>";
}

for($i=$abajo;$i<=$links;$i++){
if($link_break<$i){
break;
}
else{
if($pag==$i){
echo $i." | ";
}
else{
echo "<a href='".$_SERVER['PHP_SELF']."?pag=".$i.$extra_variables."'>";
echo $i;
echo " | </a>";

}
}
}
if($pag==$links){
$siguiente = $links;
}
else{
$siguiente = $pag + 1;
}
if($pag!=$links){
echo "<a href=".$_SERVER['PHP_SELF']."?pag=".$siguiente.$extra_variables.">Siguient e >></a>";
}
}


?>