Foros del Web » Programando para Internet » PHP »

:'( . codigo php rebelde

Estas en el tema de :'( . codigo php rebelde en el foro de PHP en Foros del Web. hola a todos, me gustaria saber si alguien me puede ayudar con este codigo y me puede decri en que fallo "antes que nada" queria ...
  #1 (permalink)  
Antiguo 14/04/2010, 05:40
 
Fecha de Ingreso: noviembre-2009
Mensajes: 44
Antigüedad: 14 años, 5 meses
Puntos: 0
:'( . codigo php rebelde

hola a todos, me gustaria saber si alguien me puede ayudar con este codigo y me puede decri en que fallo "antes que nada" queria decir que el codigo funciona correctamente pero la paginacion no, antes funcionaba pero ahora se puso revelde y no quiere funcionar (para poder ver la siguiente pagina devo escrivir en la barra de direcciones "clientes2.php?pag=2")
les agradeceria mucho su ayuda:

Código PHP:
$link mysql_connect("wqe""qwe" "qwe"); 
mysql_select_db("qwe"$link); 
$primo $_POST['criterio'];
$primo2 $_POST['criterio2'];
$where ""

if((
$primo!="") && ($primo2!="")){ 
     
$where "WHERE nombre = "."'$primo'"." AND apellidos = "."'$primo2'"
}
if ((
$primo!="") && ($primo2=="")){
     
$where "WHERE nombre = "."'$primo'";
}
if ((
$primo=="") && ($primo2!="")){
     
$where "WHERE apellidos = "."'$primo2'";
}

if (!isset(
$pag)) $pag 1// Por defecto, pagina 1
$result mysql_query("SELECT * FROM `comercio`
  COUNT(*) FROM comercios $where"
$link); 
@list(
$total) = mysql_fetch_row($result);
$tampag 10;
$reg1 = ($pag-1) * $tampag;
$result mysql_query("SELECT * FROM `comercio`
 $where LIMIT $reg1, $tampag"
$link);
  
if (
mysql_num_rows($result)){ 
  echo 
"<table border = '0'> \n"
  echo 
"<tr><td>Nombre</td><td>Apellidos</td></tr> \n"
  while (
$row = @mysql_fetch_array($result)) { 
    echo 
"<tr><td>".$row["nombre"].
      
"</td><td>".$row["apellidos"]."</td></tr> \n"
  }
  echo 
"</table> \n"
}
else
  echo 
"¡ No se ha encontrado ningún registro !";
  
  
/******************************************************/
/* Funcion paginar
 * actual:          Pagina actual
 * total:           Total de registros
 * por_pagina:      Registros por pagina
 * enlace:          Texto del enlace
 * Devuelve un texto que representa la paginacion
 */
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;
}

echo 
paginar($pag$total$tampag"clientes2.php?pag="); 
el codigo me suelta los resultados que busco pero al final me pone
<<1>> y si hay 2 paginas no me pone << 1 2 >> antes si lo hacia pero ahora no. pero si entro a clientes2.php?pag=2 si me deja elegir la 1 y me sale de la siguiente manera << 1 2 >>.

Última edición por marc_sdj; 14/04/2010 a las 05:51
  #2 (permalink)  
Antiguo 14/04/2010, 06:01
 
Fecha de Ingreso: noviembre-2009
Mensajes: 44
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: :'( . codigo php rebelde

solucionado.
el error estaba en
$result = mysql_query("SELECT * FROM `comercio` COUNT(*) FROM comercios $where", $link);

porque devia ser :

$result = mysql_query("SELECT COUNT(*) FROM `comercio` $where", $link);

igualmente gracias por todo espero que el codigo que he echo le pueda servir a alguien de algo ;)

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:31.