Paginar resultados de la base de datos con AJAX

Hola!!

Bueno, tengo un sistema de comentarios, y para que no se muestren todos seguidos quería paginarlos, mostrar los comentarios en varias páginas de 10 comentarios cada una, pero que para cambiar de página en página no haya que refrescar, así que busqué y encontré algo en AJAX que podía servir.

Los códigos quedaron así:

paginador.php (Aquí mostramos los comentarios paginados pero sin estilos, luego pongo por qué)
<?php


function expresiones($comentario) { 
$comentario = str_replace(":D","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":d","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":-d","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":-D","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":P","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":-P","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":p","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":-p","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":(","<img src=iconos/icono3.jpg>", $comentario);
$comentario = str_replace(":-(","<img src=iconos/icono3.jpg>", $comentario);
$comentario = str_replace(":O","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":-O","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":o","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":-o","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace("-.-","<img src=iconos/icono5.jpg>", $comentario);
$comentario = str_replace("-_-","<img src=iconos/icono5.jpg>", $comentario);
$comentario = str_replace(":@","<img src=iconos/icono6.jpg>", $comentario);
$comentario = str_replace(":-@","<img src=iconos/icono6.jpg>", $comentario);
$comentario = str_replace(":?","<img src=iconos/icono7.jpg>", $comentario);
$comentario = str_replace(":-?","<img src=iconos/icono7.jpg>", $comentario);
$comentario = str_replace(":X","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":-X","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":x","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":-x","<img src=iconos/icono8.jpg>", $comentario);
return $comentario; 
}


?>


<?php
 require('conexion.php');
 $RegistrosAMostrar=10;


$id = $_GET[id];
$id = strip_tags($id);


$pag = $_GET[pag];
$pag = strip_tags($pag);


if ($pag < 0){
header ("location: http://miweb.com");
}


if ($pag == 0){
header ("location: http://miweb.com");
}


 //estos valores los recibo por GET
 if(empty($pag)){
  $RegistrosAEmpezar=0;
  $PagAct=$pag;
  header ("location: http://miweb.com/novedad.php?id=$id&pag=1");
  //caso contrario los iniciamos
 }else{
  $RegistrosAEmpezar=0;
  $PagAct=$pag;
 }


 $Resultado=mysql_query("SELECT * FROM comentarios WHERE id=$id ORDER BY fecha ASC LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$con);
if (mysql_num_rows($Resultado)) {
   while ($qry = mysql_fetch_array($Resultado)) {


$fecha=isset($_GET['fecha'])?$_GET['fecha']:date("Y-m-d");
list($ano,$mes,$dia)=explode("-",$qry[fecha]);
$meses=array('Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic');
$mes=$meses[$mes-1];


$fecha2=isset($_GET['edicion'])?$_GET['edicion']:date("Y-m-d");
list($ano2,$mes2,$dia2)=explode("-",$qry[edicion]);
$meses2=array('1','2','3','4','5','6','7','8','9','10','11','12');
$mes2=$meses2[$mes2-1];


$nick = strip_tags($qry[nick]);
$nick = htmlentities($nick);
$nick = ucfirst($nick);


$comentario = strip_tags($qry[comentario]);
$comentario = htmlentities($comentario);
$comentario = expresiones($comentario);
$idcomentario = strip_tags($qry[idcomentario]);


$qry2 = mysql_fetch_array( mysql_query( "SELECT * FROM comentarios WHERE idcomentario = $idcomentario" ) );


if( $qry['tipo'] == "normal" ) {


echo "<li class='comment even thread-even depth-1' id='li-comment-$idcomentario'> 
        <div id='comment-$idcomentario'> 
        <div class='author vcard' style='width: 201px;'> 
            <div class='date'><span class='day'>$dia</span> <span class='month'>$mes</span> <span class='year'>$ano</span></div> 
            <!--<img alt='' src='http://0.gravatar.com/avatar/6d72f2841cfd866e5202457a5763bbda?s=45&amp;d=http%3A%2F%2Fwww.danielabril.net%2Fwordpress%2Fwp-content%2Fthemes%2Fminics%2Fimages%2Fdefault_avatar.png&amp;r=G' class='avatar avatar-45 photo' height='45' width='45' />--><img src='http://www.miwbe.com/avatars/$nick-XS.jpg' alt='' class='avatar avatar45-photo' height='45' width='45' /><img src='http://www.miwbe.com/img/saysomething.gif' class='saysomething' alt='arrow' height='45' /> 
            <cite class='authName fn'>$nick</cite>        </div><!-- .comment-author .vcard --> 
        
        <div class='comment-body'> 
            
            <p>$comentario</p><br /><br />
            <div class='comment-meta'> 
                Publicado a las $qry[hora]";
} else {
echo "<li class='comment even thread-even depth-1' id='li-comment-$idcomentario'> 
        <div id='comment-$idcomentario'> 
        <div class='author2'> 
            <div class='date'><span class='day'>$dia</span><span class='month2'>$mes</span><span class='year2'>$ano</span></div> 
            <!--<img alt='' src='http://0.gravatar.com/avatar/6d72f2841cfd866e5202457a5763bbda?s=45&amp;d=http%3A%2F%2Fwww.danielabril.net%2Fwordpress%2Fwp-content%2Fthemes%2Fminics%2Fimages%2Fdefault_avatar.png&amp;r=G' class='avatar avatar-45 photo' height='45' width='45' />--><img src='http://www.miwbe.com/avatars/$nick-XS.jpg' alt='' class='avatar avatar45-photo' height='45' width='45' /><!--
<!--<img src='flecha.jpg' class='saysomething' alt='arrow' height='45' />--><img src='http://www.miwbe.com/img/saysomething.gif' class='saysomething' alt='arrow' height='45' /> 
            <cite class='authName2'>$nick</cite>        </div><!-- .comment-author .vcard --> 
        
        <div class='comment-body2'> 
            
            <p>$comentario</p> 
            <div class='comment-meta'><br /><br /> 
                Publicado a las $qry[hora]";
}


$qry = mysql_fetch_array( mysql_query( "SELECT * FROM comentarios WHERE idcomentario = $idcomentario" ) );


if( !empty( $qry['edicion'] ) )
  echo " | <small><b>Última edición: <u>$dia2/$mes2/$ano2</u> a las <u>$qry[horaedicion]</u></b></small>";


echo "</div><!-- .comment-meta .commentmetadata --> 
        </div> 
 
        <!--<div class='reply'>
                    </div>--><!-- .reply --> 
    </div><!-- #comment-##  --> 
 
    </li>";  
}
}


 //******--------determinar las páginas---------******//
 $NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM comentarios WHERE id=$id"));
 $NroRegistros=strip_tags($NroRegistros);
 $PagAnt=$PagAct-1;
 $PagAnt=strip_tags($PagAnt);
 $PagSig=$PagAct+1;
 $PagSif=strip_tags($PageSig);
 $PagUlt=$NroRegistros/$RegistrosAMostrar;
 $PagUlt=strip_tags($PagUlt);


 if($pag>$PagUlt){
 header ("location: http://miweb.com");
 }


 //verificamos residuo para ver si llevará decimales
 $Res=$NroRegistros%$RegistrosAMostrar;
 $Res=strip_tags($Res);
 // si hay residuo usamos funcion floor para que me
 // devuelva la parte entera, SIN REDONDEAR, y le sumamos
 // una unidad para obtener la ultima pagina
 if($Res>0) $PagUlt=floor($PagUlt)+1;
 $PagUlt=strip_tags($PagUlt);
 
 //desplazamiento
 if($PagAct==1){
echo "<h3 class='comments-title'>";
}
 if($PagAct>1){
echo "<h3 class='comments-title'><a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('1')\">&laquo; Primera</a> ";
echo "<a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagAnt')\">Anterior</a> ";
}
 echo "<strong>Página $PagAct de $PagUlt</strong>";


 if($PagAct<$PagUlt){
 echo " <a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagSig')\">Siguiente</a> ";
}
 echo "<a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagUlt')\">Última &raquo;</a></h3>";
?>

Luego, donde quiero mostrar los comentarios paginados, añado en el head:
[COLOR=#000000][B]<[/B][/COLOR][COLOR=#000000]script language="javascript" type="text/javascript" src="ajax.js"></script[/COLOR][COLOR=#000000][B]>[/B][/COLOR]
Y para ponerlos en el sitio que quiero añado esto:
include ("paginador.php");
Y ya pone los comentarios.

Hasta ahí todo bien, sólo se ven 15 comentarios y me aparece el número total de páginas, por la que voy, etc...
Si le doy a la página siguiente, lo que tenía que hacer es mostrar los próximos 15 comentarios y quitarse los 15 primeros pero... se quitan los 15 primeros y en vez de mostrar los 15 siguientes no aparece nada donde deberían aparecer.

El archivo al que llamo, ajax.js, tiene este código:
function objetoAjax(){
 var xmlhttp=false;
  try{
   xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  }catch(e){
   try {
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
   }catch(E){
    xmlhttp = false;
   }
  }
  if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
   xmlhttp = new XMLHttpRequest();
  }
  return xmlhttp;
}


function Pagina(nropagina){
 //donde se mostrará los registros
 divContenido = document.getElementById('commentlist');
 
 ajax=objetoAjax();
 //uso del medoto GET
 //indicamos el archivo que realizará el proceso de paginar
 //junto con un valor que representa el nro de pagina
 ajax.open("GET", "paginador.php?pag="+nropagina);
 divContenido.innerHTML= 'Cargando los siguientes comentarios...';
 ajax.onreadystatechange=function() {
  if (ajax.readyState==10) {
   //mostrar resultados en esta capa
   divContenido.innerHTML = ajax.responseText
  }
 }
 //como hacemos uso del metodo GET
 //colocamos null ya que enviamos 
 //el valor por la url ?pag=nropagina
 ajax.send(null)
}

Alguien me ilumina en este camino sin luz? :rolleyes:
Bien mirando por encima tienes esto :

divContenido.innerHTML= 'Cargando los siguientes comentarios...';
ajax.onreadystatechange=function() {
if (ajax.readyState==10) {
//mostrar resultados en esta capa
divContenido.innerHTML = ajax.responseText
}
}

solo haces el divContenido nuevo se muestre en pantalla pero no borras los comentarios antes ingresados, aqui puedes usar el removeChild y esas funciones, para ver mejor y saber cual es el problema muestrame el html generado el codigo fuente que genera tu paginacion con ajax, asi podre ver que elementos tiene y como eliminarlos e ingresar nuevos elementos

Saludos!
Haber he revisado el codigo de la web que me mandaste lo probe y todo va bien , eso quiere decir que modificaste algo
aparentemente en las primeras lineas que analize de tu codigo hay un error aun revisando pero no esta demas que intentes con este:

paginador.php

<?php


function expresiones($comentario) { 
$comentario = str_replace(":D","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":d","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":-d","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":-D","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":P","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":-P","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":p","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":-p","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":(","<img src=iconos/icono3.jpg>", $comentario);
$comentario = str_replace(":-(","<img src=iconos/icono3.jpg>", $comentario);
$comentario = str_replace(":O","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":-O","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":o","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":-o","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace("-.-","<img src=iconos/icono5.jpg>", $comentario);
$comentario = str_replace("-_-","<img src=iconos/icono5.jpg>", $comentario);
$comentario = str_replace(":@","<img src=iconos/icono6.jpg>", $comentario);
$comentario = str_replace(":-@","<img src=iconos/icono6.jpg>", $comentario);
$comentario = str_replace(":?","<img src=iconos/icono7.jpg>", $comentario);
$comentario = str_replace(":-?","<img src=iconos/icono7.jpg>", $comentario);
$comentario = str_replace(":X","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":-X","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":x","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":-x","<img src=iconos/icono8.jpg>", $comentario);
return $comentario; 
}


?>


<?php
 require('conexion.php');
 $RegistrosAMostrar=10;


$id = $_GET[id];
$id = strip_tags($id);


$pag = $_GET[pag];
$pag = strip_tags($pag);


if ($pag < 0){
header ("location: http://miweb.com");
}


if ($pag == 0){
header ("location: http://miweb.com");
}


 //estos valores los recibo por GET
 if(isset($pag)){
  $RegistrosAEmpezar=($pag-1)*$RegistrosAMostrar;

  $PagAct=$pag;
  header ("location: http://miweb.com/novedad.php?id=$id&pag=1");
  //caso contrario los iniciamos
 }else{
  $RegistrosAEmpezar=0;
  $PagAct=$pag;
 }


 $Resultado=mysql_query("SELECT * FROM comentarios WHERE id=$id ORDER BY fecha ASC LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$con);
if (mysql_num_rows($Resultado)) {
   while ($qry = mysql_fetch_array($Resultado)) {


$fecha=isset($_GET['fecha'])?$_GET['fecha']:date("Y-m-d");
list($ano,$mes,$dia)=explode("-",$qry[fecha]);
$meses=array('Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic');
$mes=$meses[$mes-1];


$fecha2=isset($_GET['edicion'])?$_GET['edicion']:date("Y-m-d");
list($ano2,$mes2,$dia2)=explode("-",$qry[edicion]);
$meses2=array('1','2','3','4','5','6','7','8','9','10','11','12');
$mes2=$meses2[$mes2-1];


$nick = strip_tags($qry[nick]);
$nick = htmlentities($nick);
$nick = ucfirst($nick);


$comentario = strip_tags($qry[comentario]);
$comentario = htmlentities($comentario);
$comentario = expresiones($comentario);
$idcomentario = strip_tags($qry[idcomentario]);


$qry2 = mysql_fetch_array( mysql_query( "SELECT * FROM comentarios WHERE idcomentario = $idcomentario" ) );


if( $qry['tipo'] == "normal" ) {


echo "<li class='comment even thread-even depth-1' id='li-comment-$idcomentario'> 
        <div id='comment-$idcomentario'> 
        <div class='author vcard' style='width: 201px;'> 
            <div class='date'><span class='day'>$dia</span> <span class='month'>$mes</span> <span class='year'>$ano</span></div> 
            <!--<img alt='' src='http://0.gravatar.com/avatar/6d72f2841cfd866e5202457a5763bbda?s=45&amp;d=http%3A%2F%2Fwww.danielabril.net%2Fwordpress%2Fwp-content%2Fthemes%2Fminics%2Fimages%2Fdefault_avatar.png&amp;r=G' class='avatar avatar-45 photo' height='45' width='45' />--><img src='http://www.miwbe.com/avatars/$nick-XS.jpg' alt='' class='avatar avatar45-photo' height='45' width='45' /><img src='http://www.miwbe.com/img/saysomething.gif' class='saysomething' alt='arrow' height='45' /> 
            <cite class='authName fn'>$nick</cite>        </div><!-- .comment-author .vcard --> 
        
        <div class='comment-body'> 
            
            <p>$comentario</p><br /><br />
            <div class='comment-meta'> 
                Publicado a las $qry[hora]";
} else {
echo "<li class='comment even thread-even depth-1' id='li-comment-$idcomentario'> 
        <div id='comment-$idcomentario'> 
        <div class='author2'> 
            <div class='date'><span class='day'>$dia</span><span class='month2'>$mes</span><span class='year2'>$ano</span></div> 
            <!--<img alt='' src='http://0.gravatar.com/avatar/6d72f2841cfd866e5202457a5763bbda?s=45&amp;d=http%3A%2F%2Fwww.danielabril.net%2Fwordpress%2Fwp-content%2Fthemes%2Fminics%2Fimages%2Fdefault_avatar.png&amp;r=G' class='avatar avatar-45 photo' height='45' width='45' />--><img src='http://www.miwbe.com/avatars/$nick-XS.jpg' alt='' class='avatar avatar45-photo' height='45' width='45' /><!--
<!--<img src='flecha.jpg' class='saysomething' alt='arrow' height='45' />--><img src='http://www.miwbe.com/img/saysomething.gif' class='saysomething' alt='arrow' height='45' /> 
            <cite class='authName2'>$nick</cite>        </div><!-- .comment-author .vcard --> 
        
        <div class='comment-body2'> 
            
            <p>$comentario</p> 
            <div class='comment-meta'><br /><br /> 
                Publicado a las $qry[hora]";
}


$qry = mysql_fetch_array( mysql_query( "SELECT * FROM comentarios WHERE idcomentario = $idcomentario" ) );


if( !empty( $qry['edicion'] ) )
  echo " | <small><b>Última edición: <u>$dia2/$mes2/$ano2</u> a las <u>$qry[horaedicion]</u></b></small>";


echo "</div><!-- .comment-meta .commentmetadata --> 
        </div> 
 
        <!--<div class='reply'>
                    </div>--><!-- .reply --> 
    </div><!-- #comment-##  --> 
 
    </li>";  
}
}


 //******--------determinar las páginas---------******//
 $NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM comentarios WHERE id=$id"));
 $NroRegistros=strip_tags($NroRegistros);
 $PagAnt=$PagAct-1;
 $PagAnt=strip_tags($PagAnt);
 $PagSig=$PagAct+1;
 $PagSif=strip_tags($PageSig);
 $PagUlt=$NroRegistros/$RegistrosAMostrar;
 $PagUlt=strip_tags($PagUlt);


 if($pag>$PagUlt){
 header ("location: http://miweb.com");
 }


 //verificamos residuo para ver si llevará decimales
 $Res=$NroRegistros%$RegistrosAMostrar;
 $Res=strip_tags($Res);
 // si hay residuo usamos funcion floor para que me
 // devuelva la parte entera, SIN REDONDEAR, y le sumamos
 // una unidad para obtener la ultima pagina
 if($Res>0) $PagUlt=floor($PagUlt)+1;
 $PagUlt=strip_tags($PagUlt);
 
 //desplazamiento
 if($PagAct==1){
echo "<h3 class='comments-title'>";
}
 if($PagAct>1){
echo "<h3 class='comments-title'><a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('1')\">&laquo; Primera</a> ";
echo "<a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagAnt')\">Anterior</a> ";
}
 echo "<strong>Página $PagAct de $PagUlt</strong>";


 if($PagAct<$PagUlt){
 echo " <a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagSig')\">Siguiente</a> ";
}
 echo "<a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagUlt')\">Última &raquo;</a></h3>";
?>
Con ese código no me carga la página, me dice que hace muchos bucles de redireccionamiento
Vale, ya me quita los comentarios antiguos y no me muestra los nuevos, porque me da este error:

  • Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in/home/a6136284/public_html/paginador.php on line 185

Que viene a ser la línea remarcada:
$Resultado=mysql_query("SELECT * FROM comentarios WHERE id=$id ORDER BY fecha ASC LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$con);
[COLOR=#ff0000][B]if (mysql_num_rows($Resultado)) {[/B][/COLOR]

El código de paginador.php me quedó así:
<?php




function expresiones($comentario) { 
$comentario = str_replace(":D","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":d","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":-d","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":-D","<img src=iconos/icono1.jpg>", $comentario);
$comentario = str_replace(":P","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":-P","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":p","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":-p","<img src=iconos/icono2.jpg>", $comentario);
$comentario = str_replace(":(","<img src=iconos/icono3.jpg>", $comentario);
$comentario = str_replace(":-(","<img src=iconos/icono3.jpg>", $comentario);
$comentario = str_replace(":O","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":-O","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":o","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace(":-o","<img src=iconos/icono4.jpg>", $comentario);
$comentario = str_replace("-.-","<img src=iconos/icono5.jpg>", $comentario);
$comentario = str_replace("-_-","<img src=iconos/icono5.jpg>", $comentario);
$comentario = str_replace(":@","<img src=iconos/icono6.jpg>", $comentario);
$comentario = str_replace(":-@","<img src=iconos/icono6.jpg>", $comentario);
$comentario = str_replace(":?","<img src=iconos/icono7.jpg>", $comentario);
$comentario = str_replace(":-?","<img src=iconos/icono7.jpg>", $comentario);
$comentario = str_replace(":X","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":-X","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":x","<img src=iconos/icono8.jpg>", $comentario);
$comentario = str_replace(":-x","<img src=iconos/icono8.jpg>", $comentario);
return $comentario; 
}




?>




<?php
 require('conexion.php');
 $RegistrosAMostrar=10;




$id = $_GET[id];
$id = strip_tags($id);




$pag = $_GET[pag];
$pag = strip_tags($pag);




if ($pag < 0){
header ("location: http://miweb.com/novedad.php?id=$id&pag=1");
}




if ($pag == 0){
header ("location: http://miweb.com/");
}




 //estos valores los recibo por GET
 if(empty($pag)){
  $RegistrosAEmpezar=($pag-1)*$RegistrosAMostrar;
  $pag=1;
  $PagAct=strip_tags($_GET[pag]);
  //caso contrario los iniciamos
 }else{
  $RegistrosAEmpezar=0;
  $PagAct=$pag;
 }


 $Resultado=mysql_query("SELECT * FROM comentarios WHERE id=$id ORDER BY fecha ASC LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$con);
if (mysql_num_rows($Resultado)) {
   while ($qry = mysql_fetch_array($Resultado)) {




$fecha=isset($_GET['fecha'])?$_GET['fecha']:date("Y-m-d");
list($ano,$mes,$dia)=explode("-",$qry[fecha]);
$meses=array('Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic');
$mes=$meses[$mes-1];




$fecha2=isset($_GET['edicion'])?$_GET['edicion']:date("Y-m-d");
list($ano2,$mes2,$dia2)=explode("-",$qry[edicion]);
$meses2=array('1','2','3','4','5','6','7','8','9','10','11','12');
$mes2=$meses2[$mes2-1];




$nick = strip_tags($qry[nick]);
$nick = htmlentities($nick);
$nick = ucfirst($nick);




$comentario = strip_tags($qry[comentario]);
$comentario = htmlentities($comentario);
$comentario = expresiones($comentario);
$idcomentario = strip_tags($qry[idcomentario]);




$qry2 = mysql_fetch_array( mysql_query( "SELECT * FROM comentarios WHERE idcomentario = $idcomentario" ) );




if( $qry['tipo'] == "normal" ) {




echo "<li class='comment even thread-even depth-1' id='li-comment-$idcomentario'> 
        <div id='comment-$idcomentario'> 
        <div class='author vcard' style='width: 201px;'> 
            <div class='date'><span class='day'>$dia</span> <span class='month'>$mes</span> <span class='year'>$ano</span></div> 
            <!--<img alt='' src='http://0.gravatar.com/avatar/6d72f2841cfd866e5202457a5763bbda?s=45&amp;d=http%3A%2F%2Fwww.danielabril.net%2Fwordpress%2Fwp-content%2Fthemes%2Fminics%2Fimages%2Fdefault_avatar.png&amp;r=G' class='avatar avatar-45 photo' height='45' width='45' />--><img src='http://www.miwbe.com/avatars/$nick-XS.jpg' alt='' class='avatar avatar45-photo' height='45' width='45' /><img src='http://www.miwbe.com/img/saysomething.gif' class='saysomething' alt='arrow' height='45' /> 
            <cite class='authName fn'>$nick</cite>        </div><!-- .comment-author .vcard --> 
        
        <div class='comment-body'> 
            
            <p>$comentario</p><br /><br />
            <div class='comment-meta'> 
                Publicado a las $qry[hora]";
} else {
echo "<li class='comment even thread-even depth-1' id='li-comment-$idcomentario'> 
        <div id='comment-$idcomentario'> 
        <div class='author2'> 
            <div class='date'><span class='day'>$dia</span><span class='month2'>$mes</span><span class='year2'>$ano</span></div> 
            <!--<img alt='' src='http://0.gravatar.com/avatar/6d72f2841cfd866e5202457a5763bbda?s=45&amp;d=http%3A%2F%2Fwww.danielabril.net%2Fwordpress%2Fwp-content%2Fthemes%2Fminics%2Fimages%2Fdefault_avatar.png&amp;r=G' class='avatar avatar-45 photo' height='45' width='45' />--><img src='http://www.miwbe.com/avatars/$nick-XS.jpg' alt='' class='avatar avatar45-photo' height='45' width='45' /><!--
<!--<img src='flecha.jpg' class='saysomething' alt='arrow' height='45' />--><img src='http://www.miwbe.com/img/saysomething.gif' class='saysomething' alt='arrow' height='45' /> 
            <cite class='authName2'>$nick</cite>        </div><!-- .comment-author .vcard --> 
        
        <div class='comment-body2'> 
            
            <p>$comentario</p> 
            <div class='comment-meta'><br /><br /> 
                Publicado a las $qry[hora]";
}




$qry = mysql_fetch_array( mysql_query( "SELECT * FROM comentarios WHERE idcomentario = $idcomentario" ) );




if( !empty( $qry['edicion'] ) )
  echo " | <small><b>Última edición: <u>$dia2/$mes2/$ano2</u> a las <u>$qry[horaedicion]</u></b></small>";




echo "</div><!-- .comment-meta .commentmetadata --> 
        </div> 
 
        <!--<div class='reply'>
                    </div>--><!-- .reply --> 
    </div><!-- #comment-##  --> 
 
    </li>";  
}
}




 //******--------determinar las páginas---------******//
 $NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM comentarios WHERE id=$id"));
 $NroRegistros=strip_tags($NroRegistros);
 $PagAnt=$PagAct-1;
 $PagAnt=strip_tags($PagAnt);
 $PagSig=$PagAct+1;
 $PagSif=strip_tags($PageSig);
 $PagUlt=$NroRegistros/$RegistrosAMostrar;
 $PagUlt=strip_tags($PagUlt);




 //verificamos residuo para ver si llevará decimales
 $Res=$NroRegistros%$RegistrosAMostrar;
 $Res=strip_tags($Res);
 // si hay residuo usamos funcion floor para que me
 // devuelva la parte entera, SIN REDONDEAR, y le sumamos
 // una unidad para obtener la ultima pagina
 if($Res>0) $PagUlt=floor($PagUlt)+1;
 $PagUlt=strip_tags($PagUlt);
 
 //desplazamiento
 if($PagAct==1){
echo "<h3 class='comments-title'>";
}
 if($PagAct>1){
echo "<h3 class='comments-title'><a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('1')\">&laquo; Primera</a> ";
echo "<a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagAnt')\">Anterior</a> ";
}
 echo "<strong>Página $PagAct de $PagUlt</strong>";




 if($PagAct<$PagUlt){
 echo " <a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagSig')\">Siguiente</a> ";
}


 if($PagAct==$PagUlt){
} else {
 echo "<a style='color:#006692; text-decoration:underline; cursor:pointer;' onclick=\"Pagina('$PagUlt')\">Última &raquo;</a></h3>";
}
?>
Vale, he probado haciendo lo que dices pero no funciona...
Ahora me pone dos errores en vez de uno:



    PHP Error Message



    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in/home/a6136284/public_html/paginador.php on line 72



    Free Web Hosting






    PHP Error Message



    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in/home/a6136284/public_html/paginador.php on line 153



    Free Web Hosting





La línea del primer error:
   while ($qry = mysql_fetch_array($Resultado)) {

La línea del segundo error:
 $NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM comentarios WHERE id=$id"));

Además, si en la URL pongo &pag=2 siguen mostrándose los comentarios de la página 1 en vez de los de la 2
Pues, vuelve a adaptar el codigo desde el principio porque el codigo de la web funciona bien, el problema consiste en que no lo adaptaste bien, y yo tampoco puedo resolver porque no se que bd tienes , que es lo que quieres lograr , en fin es un tema que no tocaremos, pero en el codigo paginador.php he visto diferentes modificaciones que pueden estar mal, por ejemplo al principio me fije que ponias un if(empty, en vez del if(isset, original que venia con el codigo, isset y empty son dos cosas distintas isset(existe) y empty(vacio) al poner if(isset le dice que si existe tal parametro ejecute lo que se encuentra dentro del script, y if(empty indica que si el parametro esta vacio proceda a lo dentro del if , tambien he visto unos headers que ingresas , en fin para resolver basta con verificar detalladamente que coincida el codigo de la web con tu codigo mas lo que quieres lograr. cuando termines y tengas nuevamente error, vuelve a ponerlo y ya lo reviso.

Saludos!
Vale, va a ser mejor jeje

Sí, me fijé en lo de empty que lo cambié, lo que pasa es que quería que si en la url no ponían ninguna cosa en &pag lo redirigierá a &pag=1

En fin, luego pruebo y os cuento!