No tengo tanta practica programando pero deseaba realizar una consulta en especifico.

$this->resultados = $this->db->select_limit("SELECT * FROM facturascli ORDER BY numero WHERE codagente=".$this->agente, FS_ITEM_LIMIT, $this->offset.";");


Me tira un error se sintaxis, lo siento si es algo tonto pero no le cojo muy bien aún el uso a las clases y funciones. Agradecería su ayuda.
hace 2 semanas   appsoft   partner

Has cometido un pequeño error en los parámetros de la función. select_limit recibe tres parámetros: la consulta, el límite y el offset. Pero tu has tomado como si sólo fuera un parámetro y le has añadido el .";" al final como si todo fuese una consulta.

Prueba con

$this->resultados = $this->db->select_limit("SELECT * FROM facturascli ORDER BY numero WHERE codagente=".$this->agente, FS_ITEM_LIMIT, $this->offset);

hace 2 semanas   pierregq_103

Lo coloque así

$this->resultados = $this->db->select_limit("SELECT * FROM facturascli ORDER BY numero WHERE codagente=".$this->agente->codagente, FS_ITEM_LIMIT, $this->offset);


Y me sale una alerta

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE codagente=13 LIMIT 200 OFFSET 0' at line 1

hace 2 semanas   appsoft   partner

OK, en la base de datos codagente se guarda como texto y en la consulta lo está tomando como un número.

Debes transformarlo a string con la función var2str.

$this->resultados = $this->db->select_limit("SELECT * FROM facturascli ORDER BY numero WHERE codagente=".$this->agente->var2str($this->agente->codagente), FS_ITEM_LIMIT, $this->offset);

hace 2 semanas   pierregq_103

Me sigue arrojando la misma alerta, te copio el codigo completo.

Error:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE codagente='13' LIMIT 200 OFFSET 0' at line 1


Codigo usado:

 $this->agente = $this->user->get_agente();
	 $this->offset = 0;
	 $this->resultados = $this->db->select_limit("SELECT * FROM facturascli ORDER BY numero WHERE codagente=".$this->agente->var2str($this->agente->codagente), FS_ITEM_LIMIT, $this->offset);

hace 2 semanas   NeoRazorX   admin

Tu fallo es de SQL básico, el ORDER BY no puede ir antes que el WHERE.

hace 2 semanas   pierregq_103

Ups, lo siento. Falta de practica, gracias Razor lo pruebo y les cuento.


Si lo deseas, puedes modificar las prioridades de tus peticiones en el plan de desarrollo.

  Plan de desarrollo