Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

[AYUDA]Problema con pg_num_rows() URGENTE por favor

Estas en el tema de [AYUDA]Problema con pg_num_rows() URGENTE por favor en el foro de PostgreSQL en Foros del Web. Hola a todos bueno les comento tengo que entregar un sistema hoy en la Facultad, y me funciona todo perfecto, puedo añadir datos a la ...
  #1 (permalink)  
Antiguo 02/06/2009, 06:39
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 16 años, 2 meses
Puntos: 1
[AYUDA]Problema con pg_num_rows() URGENTE por favor

Hola a todos bueno les comento tengo que entregar un sistema hoy en la Facultad, y me funciona todo perfecto, puedo añadir datos a la base de datos leerlos y todo.. pero...

Ayer cree una nueva tabla llamada admin... en la cual tengo los campos ID como serial y primary key... user como character variying (12)... y pass como character variying (35) todos NOT NULL...

Bien ahora resulta lo siguiente tengo un usuario de prueba cargado llamado marcos con el pass prueba...

y tengo este codigo php para leer cuantos marcos hay

Código PHP:
Ver original
  1. function login($user)
  2. {
  3. //CONECTAMOS A LA BASE DE DATOS
  4.     $conn = Conectarse();
  5.     if (!$conn)
  6.         return 0;
  7.            
  8.      $query = "SELECT * FROM admin WHERE user='marcos';";
  9.     $result = pg_query($query);
  10.    
  11.     $aver = pg_num_rows($result);
  12.     echo $aver;
  13.                            
  14.     if (!$result)
  15.         return 0;
  16.    
  17.     if (pg_num_rows($result)>0)
  18.         return 1;
  19.     else
  20.         return 0;
  21.  
  22. }

obviamente donde dice "WHERE user='marcos' iria user='$user' y tambien tengo que añadir el pass... pero simplemente hice eso para ver si me leia bien que habia un usuario llamado marcos...

bueno el problema es que me devuelve 0 el pg_num_rows es como que no encontrara nada.

y si por ejemplo hago este cambio $query = "SELECT * FROM normas WHERE numero='1999';";

me devuelve 1 directamente porque hay una norma con el numero 1999... asi que yo creo que el problema esta en la tabla creada y no en las instrucciones SQL y php

tambien hice para probar a ver si puedo añadir datos, con este codigo php
Código PHP:
Ver original
  1. function add_admin($user, $pass)
  2. {
  3.     $conn = Conectarse();
  4.     if ($conn)
  5.     {
  6.         $query = "INSERT INTO admin (user, pass) VALUES ('$user', '$pass')";
  7.         $result = pg_query($query);
  8.     }
  9.     else
  10.     echo "Error al conectarse a la base de datos, intente nuevamente o comuniquese conel Administrador<br />";
  11.    
  12.     if ($result)
  13.     {
  14.         return "Nuevo Administrador Añadido a la Base de datos<br />";
  15.     }
  16.     else
  17.     {
  18.         return "Error al añadir admin, intenta nuevamente o comuniquese con el Administrador<br />";
  19.     }
  20. }

pero tambien me da error y me parece rarisimo porque esta bien el query para añadir datos es el que uso para añadir datos en otras tablas y en todas funciona pero en esta admin que fue la ultima que cree no me los añade ni me los lee los datos...

la consola me devuelve que tengo un error de sintaxix... pero me parece rarisimo
Cita:
Warning: pg_query() [function.pg-query]: Query failed: ERROR: syntax error at or near "user" LINE 1: INSERT INTO admin (user, pass) VALUES ('marcos2', 'c893bad68... ^ in D:\Servidor\htdocs\Digesto\func_db.php on line 58
por favor necesito ayuda urgente las 5 de la tarde tengo que presentarlo y son las 10 AM de aca Argentina.

SAludos
  #2 (permalink)  
Antiguo 02/06/2009, 08:14
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 10 meses
Puntos: 360
Respuesta: [AYUDA]Problema con pg_num_rows() URGENTE por favor

te recomiendo no uses como nombre de campo la palabra user, esto te puede generar errores.

crea una tabla idéntica, cambiando los nombres de los campos y tabla. Trata de usar palabras que no tengan riesgo de ser reservadas.

Descartemos eso primero, sino es eso, probamos otras cosas.

Pruebalo nuevamente y nos cuentas.

Un saludo.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 02/06/2009, 10:38
Avatar de chicohot20  
Fecha de Ingreso: mayo-2009
Mensajes: 388
Antigüedad: 15 años, 6 meses
Puntos: 43
Respuesta: [AYUDA]Problema con pg_num_rows() URGENTE por favor

Hola no se mucho de PHP pero creo que el error esta en tus funciones PHP.

Deberia ser así:


Código Consulta:
Ver original
  1. $query = "SELECT * FROM admin WHERE user='".$user."';";


Código Insert:
Ver original
  1. $query = "INSERT INTO admin (user, pass) VALUES ('".$user."', '".$pass."')";


Cuentanos como te va.
  #4 (permalink)  
Antiguo 04/06/2009, 16:24
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: [AYUDA]Problema con pg_num_rows() URGENTE por favor

Muchisimas gracias a los 2 la verdad el problema es que la tabla no se podia llamar Admin, asi que lo que hice fue cambiar el nombre de la tabal a "administradores" y el usuario "administrador" use el mismo query y funciona perfecto.

Saludos y gracias nuevamente
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 07:18.