Hola amigos! una vez más molestando pidiendo de su ayuda, estoy realizando por primera vez la paginación con php y mysql ya que tengo un sitio en donde me arroja varios resultados de registros de una base de datos la cual quiero paginar y para ello indicarle la cantidad de resultados por página. Me estoy basando en este tutorial que encontré ( https://mimentevuela.wordpress.com/2015/12/25/paginacion-con-php-y-mysql/ ). Mi problema es que al momento de hacer mi consulta sql, en la parte del LIMIT si lo coloco después de mi consulta como se muestra a continuación en mi código si me muestra los números de página y se aumentan o disminuyen si yo le cambio en mi numero de resultados de pagina que es el $num_rec_per_page a 20 ó 5 etc. oero me sigue arrojando mas de 10 resultados cuando se supone que yo le estoy indicando que soólo me arroje 10. Si yo cambio mi LIMIT dentro de la consulta sql, si me imprime los 10 resultados pero mis numero de paginas deja de funcionar. Quisiera saber el por que me sucede esto ó alguna sugerencia, se los agradeceré mucho. Saludos.
<?php
$num_rec_per_page=10;
if (isset($_GET["page"])) { $page = $_GET["page"]; } else { $page=1; };
$start_from = ($page-1) * $num_rec_per_page;
$sql = "
SELECT
p.id,
p.folio,
p.tipo,
p.operacion,
p.precio_en_pesos,
p.precio_en_dolares,
p.renta_ano,
p.renta_mes,
p.renta_dia,
p.terreno,
p.construccion,
p.url_de_la_propiedad,
c.numero_de_banos,
c.numero_de_recamaras,
c.numero_de_cajonesest,
l.nombre AS colonia
FROM
propiedades AS p
INNER JOIN
caracteristicas AS c ON c.id_propiedad = p.id
INNER JOIN
localidades AS l ON l.id = p.colonia
WHERE
p.estado = 1 AND
p.inmobiliaria = 4
;";
** $sql .= " LIMIT ".$start_from.", ".$num_rec_per_page;**
$stmt = $this->db->prepare($sql);
$stmt->execute();
$total_records = $stmt->rowCount();
$total_pages = ceil($total_records / $num_rec_per_page);
?>