Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > PostgreSQL

Respuesta
 
Herramientas Desplegado
Antiguo 23-mar-2008, 12:46   #1 (permalink)
lapooh ha deshabilitado el karma
 
Avatar de lapooh
 
Fecha de Ingreso: diciembre-2007
Mensajes: 5
Cool Error en query utilizando postgres

Buenas Tardes:

Soy Nueva en postgres y me sale este error

Warning: pg_query() [function.pg-query]: Query failed: ERROR: invalid input syntax for integer: ""

el codigo que hace surgir este error es el siguiente :

Código PHP:
$query "SELECT * FROM public.banco where banco.id='".$_REQUEST['banco']."'";
$result pg_query($query); 
Aun no encuentro el error no se si me pueden ayudar estaria muy agradecida
lapooh está desconectado   Responder Citando
Antiguo 24-mar-2008, 06:18   #2 (permalink)
seyko ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2007
Mensajes: 974
Re: Error en query utilizando postgres

Cita:
Iniciado por lapooh Ver Mensaje
Buenas Tardes:

Soy Nueva en postgres y me sale este error

Warning: pg_query() [function.pg-query]: Query failed: ERROR: invalid input syntax for integer: ""

el codigo que hace surgir este error es el siguiente :

Código PHP:
$query "SELECT * FROM public.banco where banco.id='".$_REQUEST['banco']."'";
$result pg_query($query); 
Aun no encuentro el error no se si me pueden ayudar estaria muy agradecida
Si vuelves a leer el error igual te das cuenta que estás pasando un integer vacio.
No programo en PHP pero me da que el valor de .$_REQUEST['banco']. es vacio.
seyko está desconectado   Responder Citando
Antiguo 24-mar-2008, 11:56   #3 (permalink)
Sergestux no se puede cailificar en este momento
 
Avatar de Sergestux
 
Fecha de Ingreso: agosto-2007
Ubicación: Tijuas
Mensajes: 357
Enviar un mensaje por Yahoo  a Sergestux
Re: Error en query utilizando postgres

me parece que tu campo id de la tabla banco es de tipo entero y tu en la consulta le estas diciendo que es de tipo cadena
Cita:
banco.id='".$_REQUEST['banco']."'";
banco.id='Cualquier numero'; //Salida
banco.id=Cualquier numero; //Salida correcta sin comillas
En conclusion quitale las comillas simples y pueda quedar asi:
Código PHP:
$query "SELECT * FROM public.banco where banco.id=" $_REQUEST['banco']; 
__________________
You'll be free, hackers, you'll be free
Sergestux está desconectado   Responder Citando
Antiguo 25-mar-2008, 12:53   #4 (permalink)
lapooh ha deshabilitado el karma
 
Avatar de lapooh
 
Fecha de Ingreso: diciembre-2007
Mensajes: 5
Re: Error en query utilizando postgres

Gracias por Responder chicos

Lo qe debi poner es la estructura de la tabla
Código:
CREATE TABLE banco
(
  id serial NOT NULL,
  detalle varchar(100),
  estado varchar(2),
  CONSTRAINT banco_pkey PRIMARY KEY (id)
)
la solucion que encontre y que muchos se al respecto, pero es la me funciono

Código PHP:
$query "SELECT * FROM public.banco where banco.id like '" .$_REQUEST['banco']. "'"
Muchas Gracias y a ver si encuentran otra solucion
lapooh está desconectado   Responder Citando
Antiguo 25-mar-2008, 12:55   #5 (permalink)
lapooh ha deshabilitado el karma
 
Avatar de lapooh
 
Fecha de Ingreso: diciembre-2007
Mensajes: 5
Re: Error en query utilizando postgres

Gracias por Responder chicos

Lo que debi poner es la estructura de la tabla
Código:
CREATE TABLE banco
(
  id serial NOT NULL,
  detalle varchar(100),
  estado varchar(2),
  CONSTRAINT banco_pkey PRIMARY KEY (id)
)
la solucion que encontre y que muchos se al respecto, pero es la me funciono

Código PHP:
$query "SELECT * FROM public.banco where banco.id like '" .$_REQUEST['banco']. "'"
Muchas Gracias y a ver si encuentran otra solucion
lapooh está desconectado   Responder Citando
Antiguo 26-mar-2008, 18:04   #6 (permalink)
Sergestux no se puede cailificar en este momento
 
Avatar de Sergestux
 
Fecha de Ingreso: agosto-2007
Ubicación: Tijuas
Mensajes: 357
Enviar un mensaje por Yahoo  a Sergestux
Re: Error en query utilizando postgres

Yo nunca usaria el operador like para consultar una llave primaria
__________________
You'll be free, hackers, you'll be free
Sergestux está desconectado   Responder Citando
Antiguo 27-mar-2008, 04:12   #7 (permalink)
seyko ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2007
Mensajes: 974
Re: Error en query utilizando postgres

jeje y menos si es numerica
seyko está desconectado   Responder Citando
Antiguo 27-mar-2008, 11:23   #8 (permalink)
Sergestux no se puede cailificar en este momento
 
Avatar de Sergestux
 
Fecha de Ingreso: agosto-2007
Ubicación: Tijuas
Mensajes: 357
Enviar un mensaje por Yahoo  a Sergestux
Re: Error en query utilizando postgres

Como empezaste estaba bien (sin comillas simples) y con esa estructura de la tabla que pones es correcta solamente que tu archivo php no esta recibiendo los valores correctamente, siempre es bueno hacer un echo para comprobar tu consulta:
Código PHP:
$query "SELECT * FROM banco where id=".$_REQUEST['banco']; 
echo 
$query//para ver si realmente la consulta se ejecuta como tu deseas
$result pg_query($query); 
__________________
You'll be free, hackers, you'll be free
Sergestux está desconectado   Responder Citando
Antiguo 28-mar-2008, 15:13   #9 (permalink)
lapooh ha deshabilitado el karma
 
Avatar de lapooh
 
Fecha de Ingreso: diciembre-2007
Mensajes: 5
Re: Error en query utilizando postgres

Buenas Tardes :
Si, no me siento conforme con esa sentencia pero Sergestux yo hice la consulta como me aconsejastes pero me sale este error
Cita:
Query failed: ERROR: syntax error at or near "id" LINE 1: SELECT * FROM banco where id=1 ^ in
ayudaaaaa
lapooh está desconectado   Responder Citando
Antiguo 28-mar-2008, 15:24   #10 (permalink)
Sergestux no se puede cailificar en este momento
 
Avatar de Sergestux
 
Fecha de Ingreso: agosto-2007
Ubicación: Tijuas
Mensajes: 357
Enviar un mensaje por Yahoo  a Sergestux
Re: Error en query utilizando postgres

Como te hemos ido mencionando el problema no es de postgres ni siquiera de php puesto que le esta llegando basura a tus variables (where id=1 ^ in), checa bien donde pasas el valor y verifica que realmente estas pasando el valor correctamente... como pues hazle echos a tus variables:

En la funcion de consulta:
echo "--- $query ---";

Antes de llamar a la funcion en el archivo php:
echo "---- " . $_REQUEST['banco'] . " ---";

Dale ver codigo fuente al php generado por si acaso piensas que no aparecen esos echo
__________________
You'll be free, hackers, you'll be free
Sergestux está desconectado   Responder Citando
Antiguo 29-mar-2008, 10:32   #11 (permalink)
lapooh ha deshabilitado el karma
 
Avatar de lapooh
 
Fecha de Ingreso: diciembre-2007
Mensajes: 5
Re: Error en query utilizando postgres

Tienes razon Sergestux gracias gracias y muchisimas gracias

Hasta la proxima
lapooh está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 01:33.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93