Ver Mensaje Individual
  #8 (permalink)  
Antiguo 15/05/2014, 10:23
Avatar de Reedyseth
Reedyseth
 
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 3 meses
Puntos: 36
Respuesta: sql -> query -> PDO -> limit no funciona

La sintaxis de SQL con el LIMIT es:


Código:
LIMIT inicio, fin
Cita:
Iniciado por quico5 Ver Mensaje
gracias italico76, yo también los he visto

he probado basandome en esos ejemplos pero nada

Código PHP:
$noticias $this->_db->query("SELECT * FROM noticias ORDER BY id DESC LIMIT :inicio, :fin");
$noticias->bindValue(':inicio'0PDO::PARAM_INT);
$noticias->bindValue(':fin'2PDO::PARAM_INT);
return 
$noticias->fetchall(); 
Este ejemplo que utilizas esta mal. Estas intentando ligar (bind) parametros sin haber preparado el statement ( prepare() ).


Cita:
Parece que así funciona

Código PHP:
$noticias = $this->_db->query("SELECT * FROM noticias ORDER BY id DESC LIMIT 1, 2");
return $noticias->fetchall();
$noticias->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

Aquí
Cita:
$noticias->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
no es necesario, con solo el hecho de utilizar query() y enviarle la consulta sin parametros se ejecuta.


Estas extrayendo malo datos, debes de usar
Cita:
fetchAll()
fijate en la mayúscula.


Utiliza este código para obtener la información:

Código PHP:
$from 0;
$to 3;
$noticias $this->_db->prepare("SELECT * FROM noticias WHERE id ORDER BY id DESC LIMIT ?,?"); 
$noticias->execute(array($from,$to));
return 
$noticias->fetchAll(); 
Estoy creando una libreria para manejar todo este tipo de datos y evitar eso tan molesto, si estas interesado en utilizarla con gusto te la puedo compartir.


Saludos.
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.