Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - den_22

#11
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 20:45 PM
Pero $pag no viene del buscador si yo pongo esto

Código (php) [Seleccionar]
$id=$_SESSION["id"];
$usuario=$_SESSION["usuario"];
$pag=$_POST['pag'];


no entiendo como deberia ser.
#12
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 20:30 PM
Ah, no no cambia, o sea el numero si cambia pero el Estas en la pagina, siempre se mantiene en 1
#13
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 20:21 PM
Haciendo lo que dijiste dice Estas en la pagina : 1, los links cambian pag=1 pag=2; pero el tema es que si yo presiono la 2 no mantiene el rango de usuarios que estoy buscando, me muestra todos.
#14
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 20:11 PM
Puse algo asi:

Código (php) [Seleccionar]
<?php
include('header.inc');


$id=$_SESSION["id"];
$usuario=$_SESSION["usuario"];



include_once (
"connect.php");




$sexo = (!empty($_POST["sexo"])
    ? 
" sexo='".trim($_POST["sexo"])."'"
        
"");
 
$interestin = (!empty($_POST["interestin"])
        ? (!empty(
$sexo)
                ? 
" AND interestin='".trim($_POST["interestin"])."'"
                
" interestin='".trim($_POST["interestin"])."'")
        : 
"");
 
$pais = (!empty($_POST["pais"])
        ? (!empty(
$sexo) || !empty($interestin)
                ? 
" AND pais='".trim($_POST["pais"])."'"
                
" pais='".trim($_POST["pais"])."'")
        : 
"");
 
$estadocivil= (!empty($_POST["estadocivil"])
        ? (!empty(
$sexo) || !empty($interestin) || !empty($pais)
                ? 
" AND estadocivil='".trim($_POST["estadocivil"])."'"
                
" estadocivil='".trim($_POST["estadocivil"])."'")
        : 
"");
 

 
$where = (!empty($sexo) || !empty($interestin) || !empty($pais) || !empty($estadocivil)  
        ? 
" WHERE "
        
"");
 
echo 
$pag;

if (!isset(
$pag)) $pag 1// Por defecto, pagina 1
$result mysql_query("SELECT COUNT(*) FROM members"); 
list(
$total) = mysql_fetch_row($result);
$tampag 5;
$reg1 = ($pag-1) * $tampag;

function 
paginar($actual$total$por_pagina$enlace) {
  
$total_paginas ceil($total/$por_pagina);
  
$anterior $actual 1;
  
$posterior $actual 1;
  if (
$actual>1)
    
$texto "<a href=\"$enlace$anterior\">&laquo;</a> ";
  else
    
$texto "<b>&laquo;</b> ";
  for (
$i=1$i<$actual$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  
$texto .= "<b>$actual</b> ";
  for (
$i=$actual+1$i<=$total_paginas$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  if (
$actual<$total_paginas)
    
$texto .= "<a href=\"$enlace$posterior\">&raquo;</a>";
  else
    
$texto .= "<b>&raquo;</b>";
  return 
$texto;
}

 
$s "SELECT * FROM members " 
        
$where
        
$sexo 
        
$interestin
        
$pais 
        
$estadocivil
        
." LIMIT $reg1$tampag";





 
$query mysql_query($s) or die(mysql_error());



while(
$row mysql_fetch_array($query)) {







?>


y no pasa nada. aparece <1><2> pero al presionar en la pagina 2 me muestra los resultados no que yo filtré sino todos los usuarios de la bd
#15
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 19:59 PM
No pasa nada al hacerlo, es lo mismo, lo que yo me pregunto, es como se hace para "conservar" los datos que se filtraron en la búsqueda y para que aparezcan en las paginas siguientes los usuarios con las mismas caracteristicas.
En vez de poner
Código (php) [Seleccionar]
<?php echo paginar($pag$total$tampag"show_results.php?pag="); ?>

deberia poner algo como
Código (php) [Seleccionar]
<?php echo paginar($pag$total$tampag"show_results.php?pag=".$url.""); ?>   ?
#16
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 19:53 PM
Lo hago con var_dump ? o con echo?
#17
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 19:22 PM
Si, ahi me di cuenta, ahora poniendolo asi funciona, pero lo que pasa es que al pasar a la pagina siguiente sigue mostrandome todos los usuarios de la bd, en la unica que respeta es en la primera. pero no asi en las siguientes. existe algun problema en la url? en la forma de paginarlo?

yo al final del codigo pongo esto:

Código (php) [Seleccionar]
<?php echo paginar($pag$total$tampag"mostrar_resultados.php?pag="); ?>

Código (php) [Seleccionar]

<?php
include('header.inc');

$id=$_SESSION["id"];
$usuario=$_SESSION["usuario"];



include_once (
"connect.php");




$sexo = (!empty($_POST["sexo"])
    ? 
" sexo='".trim($_POST["sexo"])."'"
        
"");
 
$interestin = (!empty($_POST["interestin"])
        ? (!empty(
$sexo)
                ? 
" AND interestin='".trim($_POST["interestin"])."'"
                
" interestin='".trim($_POST["interestin"])."'")
        : 
"");
 
$pais = (!empty($_POST["pais"])
        ? (!empty(
$sexo) || !empty($interestin)
                ? 
" AND pais='".trim($_POST["pais"])."'"
                
" pais='".trim($_POST["pais"])."'")
        : 
"");
 
$estadocivil= (!empty($_POST["estadocivil"])
        ? (!empty(
$sexo) || !empty($interestin) || !empty($pais)
                ? 
" AND estadocivil='".trim($_POST["estadocivil"])."'"
                
" estadocivil='".trim($_POST["estadocivil"])."'")
        : 
"");
 

 
$where = (!empty($sexo) || !empty($interestin) || !empty($pais) || !empty($estadocivil)  
        ? 
" WHERE "
        
"");
 

if (!isset(
$pag)) $pag 1// Por defecto, pagina 1
$result mysql_query("SELECT COUNT(*) FROM members"); 
list(
$total) = mysql_fetch_row($result);
$tampag 5;
$reg1 = ($pag-1) * $tampag;

function 
paginar($actual$total$por_pagina$enlace) {
  
$total_paginas ceil($total/$por_pagina);
  
$anterior $actual 1;
  
$posterior $actual 1;
  if (
$actual>1)
    
$texto "<a href=\"$enlace$anterior\">&laquo;</a> ";
  else
    
$texto "<b>&laquo;</b> ";
  for (
$i=1$i<$actual$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  
$texto .= "<b>$actual</b> ";
  for (
$i=$actual+1$i<=$total_paginas$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  if (
$actual<$total_paginas)
    
$texto .= "<a href=\"$enlace$posterior\">&raquo;</a>";
  else
    
$texto .= "<b>&raquo;</b>";
  return 
$texto;
}

 
$s "SELECT * FROM members " 
        
$where
        
$sexo 
        
$interestin
        
$pais 
        
$estadocivil
        
." LIMIT $reg1$tampag";





 
$query mysql_query($s) or die(mysql_error());



while(
$row mysql_fetch_array($query)) {







?>
#18
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 19:18 PM
Bueno, MinusFour, hice lo que me indicaste, lo puse asi:

Código (php) [Seleccionar]
<?php
include('header.inc');

$id=$_SESSION["id"];
$usuario=$_SESSION["usuario"];



include_once (
"connect.php");




$sexo = (!empty($_POST["sexo"])
    ? 
" sexo='".trim($_POST["sexo"])."'"
        
"");
 
$interestin = (!empty($_POST["interestin"])
        ? (!empty(
$sexo)
                ? 
" AND interestin='".trim($_POST["interestin"])."'"
                
" interestin='".trim($_POST["interestin"])."'")
        : 
"");
 
$pais = (!empty($_POST["pais"])
        ? (!empty(
$sexo) || !empty($interestin)
                ? 
" AND pais='".trim($_POST["pais"])."'"
                
" pais='".trim($_POST["pais"])."'")
        : 
"");
 
$estadocivil= (!empty($_POST["estadocivil"])
        ? (!empty(
$sexo) || !empty($interestin) || !empty($pais)
                ? 
" AND estadocivil='".trim($_POST["estadocivil"])."'"
                
" estadocivil='".trim($_POST["estadocivil"])."'")
        : 
"");
 

 
$where = (!empty($sexo) || !empty($interestin) || !empty($pais) || !empty($estadocivil)  
        ? 
" WHERE "
        
"");
 

 
$s "SELECT * FROM members " 
        
$where
        
$sexo 
        
$interestin
        
$pais 
        
$estadocivil
        
." LIMIT $reg1$tampag";


if (!isset(
$pag)) $pag 1// Por defecto, pagina 1
$result mysql_query("SELECT COUNT(*) FROM members"); 
list(
$total) = mysql_fetch_row($result);
$tampag 5;
$reg1 = ($pag-1) * $tampag;

function 
paginar($actual$total$por_pagina$enlace) {
  
$total_paginas ceil($total/$por_pagina);
  
$anterior $actual 1;
  
$posterior $actual 1;
  if (
$actual>1)
    
$texto "<a href=\"$enlace$anterior\">&laquo;</a> ";
  else
    
$texto "<b>&laquo;</b> ";
  for (
$i=1$i<$actual$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  
$texto .= "<b>$actual</b> ";
  for (
$i=$actual+1$i<=$total_paginas$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  if (
$actual<$total_paginas)
    
$texto .= "<a href=\"$enlace$posterior\">&raquo;</a>";
  else
    
$texto .= "<b>&raquo;</b>";
  return 
$texto;
}
 
$query mysql_query($s) or die(mysql_error());



while(
$row mysql_fetch_array($query)) {



pero al darle a buscar no sale nada, la pagina en blanco. deberia buscar. cual puede ser el error?
#19
PHP / Re: Paginador de resultados ayuda!
15 Mayo 2010, 19:03 PM
Hola, quité esa parte del if, pero sigue igual. que debo cambiar en el $result ?
#20
PHP / Paginador de resultados ayuda!
15 Mayo 2010, 17:47 PM
Hola! que tal, verán estoy tratando de hacer un paginador de resultados de un buscador de usuarios, pero lamentablemente no me sale, tengo este codigo, que es el mostrar_resultados.php, pero al hacer la busqueda en vez de mostrar 5 resultados me muestra 6, y al pasar a siguiente, me muestra todos los usuarios de la bd.
Entonces la pregunta es cómo hago para poder paginarlo bien?, hay algo que estoy haciendo mal? cuando la pagina ya existe como hago para cargarla y que siga manteniendo la consulta?

Código (php) [Seleccionar]

<?php
include('header.inc');


if(!
$_SESSION['usuario']=='usuario'){
header("Location: index.php");// si no es igual a nick te direcciona al inicio u a otra pagina 
}

include_once (
"connect.php");

$id=$_SESSION["id"];
$usuario=$_SESSION["usuario"];


$sexo = (!empty($_POST["sexo"])
    ? 
" sexo='".trim($_POST["sexo"])."'"
        
"");
 
$interestin = (!empty($_POST["interestin"])
        ? (!empty(
$sexo)
                ? 
" AND interestin='".trim($_POST["interestin"])."'"
                
" interestin='".trim($_POST["interestin"])."'")
        : 
"");
 
$pais = (!empty($_POST["pais"])
        ? (!empty(
$sexo) || !empty($interestin)
                ? 
" AND pais='".trim($_POST["pais"])."'"
                
" pais='".trim($_POST["pais"])."'")
        : 
"");
 
$estadocivil= (!empty($_POST["estadocivil"])
        ? (!empty(
$sexo) || !empty($interestin) || !empty($pais)
                ? 
" AND estadocivil='".trim($_POST["estadocivil"])."'"
                
" estadocivil='".trim($_POST["estadocivil"])."'")
        : 
"");
 

 
$where = (!empty($sexo) || !empty($interestin) || !empty($pais) || !empty($estadocivil)  
        ? 
" WHERE "
        
"");
 

 
$s "SELECT * FROM members " 
        
$where
        
$sexo 
        
$interestin
        
$pais 
        
$estadocivil;
 
$query mysql_query($s) or die(mysql_error());

if (!isset(
$pag)) $pag 1// Por defecto, pagina 1
$result mysql_query("SELECT COUNT(*) FROM members"); 
list(
$total) = mysql_fetch_row($result);
$tampag 5;
$reg1 = ($pag-1) * $tampag;
$result mysql_query("SELECT sexo, interestin, pais, estadocivil FROM members
  LIMIT 
$reg1$tampag"); 


function 
paginar($actual$total$por_pagina$enlace) {
  
$total_paginas ceil($total/$por_pagina);
  
$anterior $actual 1;
  
$posterior $actual 1;
  if (
$actual>1)
    
$texto "<a href=\"$enlace$anterior\">&laquo;</a> ";
  else
    
$texto "<b>&laquo;</b> ";
  for (
$i=1$i<$actual$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  
$texto .= "<b>$actual</b> ";
  for (
$i=$actual+1$i<=$total_paginas$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  if (
$actual<$total_paginas)
    
$texto .= "<a href=\"$enlace$posterior\">&raquo;</a>";
  else
    
$texto .= "<b>&raquo;</b>";
  return 
$texto;
}



while(
$row mysql_fetch_array($query)) {




?>


en la parte del html, muestro los detalles del usuario haciendo
Código (php) [Seleccionar]
<?php echo $row['estadocivil'];?> por ejemplo

y en el final de la pagina hago lo siguiente

Código (php) [Seleccionar]
<?php echo paginar($pag$total$tampag"mostrar_resultados.php?pag="); ?>

Gracias por leer.