Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] problema con una consulta sql en codeigniter

Estas en el tema de problema con una consulta sql en codeigniter en el foro de PHP en Foros del Web. Teno este código en php: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original $consulta = "SELECT * FROM (`mensaje`) WHERE `id_emisor` IN (1,2) AND `id_receptor` IN (1,2) ...
  #1 (permalink)  
Antiguo 02/12/2014, 17:39
 
Fecha de Ingreso: abril-2012
Mensajes: 124
Antigüedad: 12 años
Puntos: 3
problema con una consulta sql en codeigniter

Teno este código en php:

Código PHP:
Ver original
  1. $consulta = "SELECT * FROM (`mensaje`) WHERE `id_emisor` IN (1,2) AND `id_receptor` IN (1,2) AND `id_anuncio` = 3 ";
  2.         $a = $this->db->get($consulta);

Pero me da este 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 '* FROM (`mensaje`) WHERE `id_emisor` IN (1, `2` ) AND `id_receptor` IN (1, `2` ' at line 2

SELECT * FROM (`SELECT` * FROM (`mensaje`) WHERE `id_emisor` IN (1, `2` ) AND `id_receptor` IN (1, `2` ) AND `id_anuncio` = 3)

Lo correcto sería eso, pero tampoco funciona
Código PHP:
Ver original
  1. $this->db->from('mensaje');
  2. $this->db->where_in('id_emisor', "$id1, $id2");
  3. $this->db->where_in('id_receptor', "$id1, $id2");
  4. $this->db->where('id_anunci', $id_anuncio);

El problema es que son valores numéricos y codeigniter le pone unas comillas que sobran. Como las quito?
__________________
Mi web de programación en PHP en construcción, claro. Un dia de esos pongo algo.
  #2 (permalink)  
Antiguo 02/12/2014, 23:08
Avatar de jamie_88  
Fecha de Ingreso: abril-2011
Ubicación: Lima
Mensajes: 161
Antigüedad: 13 años
Puntos: 28
Respuesta: problema con una consulta sql en codeigniter

Hola, el primer código te origina un select * del select que estas pasado al método get, y no creo que sea lo que quieres, así que descartalo. Como dato extra puedes pasar como segundo parámetro FALSE, para que no ponga las comillas, pero este no es el caso de usar ese código. En el segundo código, estas pasando un string como segundo parámetro al método where_in, cuando deberías pasar un array.


Saludos
  #3 (permalink)  
Antiguo 03/12/2014, 07:44
jqg
 
Fecha de Ingreso: diciembre-2014
Mensajes: 1
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: problema con una consulta sql en codeigniter

Prueba utilizando
$a = $this->db->query($consulta);

Etiquetas: codeigniter, mysql, select, sql
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 00:17.