SoloCodigo

Programación Web y Scripting => PHP => Mensaje iniciado por: RadicalEd en Viernes 22 de Diciembre de 2006, 16:06

Título: Pcon:resource Id #4
Publicado por: RadicalEd en Viernes 22 de Diciembre de 2006, 16:06
Hola chicos de SoloCodigo, gracias por todo en el post anterior, gracias ArKaNtOs, su- y javier3 :D

Bueno ahora que comence con la aplicación a la que tengo que hacerle el reporte y hago una entrada de usuario por formulario con un simple select, POS COMO SE CONECTA NORMAL, este me saca el error (o no se como decirle :blink:  :unsure: ) que está en el título:
pcon:Resource id #4

y pos tendria que entrar a la siguiente pantalla del sistema, lo que no hace según el mensaje que está soltando.
Aquí pueden encontrar el sistema ouviduria (http://www.celepar.pr.gov.br/celepar/modules/conteudo/conteudo.php?conteudo=60)

Y esta es la consulta
<!--sql--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>SQL </td></tr><tr><td id='CODE'><!--sql1-->$stmt ="[color=blue;font-weight]SELECT U.CODUSUARIO, U.CODORGAO, U.NOMEUSUARIO, U.SITUACAO, U.NIVELACESSO, O.NOMEORGAO FROM TB_USUARIO U LEFT JOIN TB_ORGAO O ON U.CODORGAO=O.CODORGAO WHERE U.CODUSUARIO=$login AND U.SENHA=$passwd;"[/color]; <!--sql2--></td></tr></table><div class='postcolor'><!--sql3-->
Saben que puede estar pasando?
Título: Re: Pcon:resource Id #4
Publicado por: Enko en Viernes 22 de Diciembre de 2006, 16:29
No soy bueno en esto, pero creo que te falta unas comillas:
Código: Text
  1.  
  2. WHERE U.CODUSUARIO='&#036;login' AND U.SENHA='&#036;passwd';&#34;;
  3.  
  4.  
Título: Re: Pcon:resource Id #4
Publicado por: RadicalEd en Viernes 22 de Diciembre de 2006, 16:45
Ya lo probe de esa forma, lo raro es que use la misma consulta en otro script para verificar y funciona lo más de bien. :blink:
Título: Re: Pcon:resource Id #4
Publicado por: Altareum en Viernes 22 de Diciembre de 2006, 16:45
Cuando abres una conexión a mysql, haces una consulta, abres un archivo, PHP utiliza punteros para lo cual maneja un identificador. Lo que ves: Resource id #4 es un identificador como esos.

Lo mismo pasa si haces un echo de una conexión a mysql o a una consulta, por ejemplo:
Citar
echo mysql_connect('localhos','usuario','clave');
echo mysql_query('select * from .... ');

No puedo explicarte bien el porque, pero seguramente debe almacenar dichas respuestas en memoria para lo cual usa un puntero (es lo más problable), o que guarde dichos datos en un archivo, o bien que mysql se comunique de esa forma. Y el identificador es como decir que pasa la posición de memoria en la cual debe buscar la información o en que archivo.


No se bien que estás imprimiendo para ver eso, pero si estás queriendo saber el error de mysql tienes dos funciones:
mysql_error();
mysql_errno();

mysql_errno te dará el número correspondiente al error, el cual puedes verlo en la siguiente página:
Mysql Error Codes and Messages (http://dev.mysql.com/doc/refman/5.0/en/error-handling.html)


Espero que te sirva.
Altareum.
Título: Re: Pcon:resource Id #4
Publicado por: RadicalEd en Viernes 22 de Diciembre de 2006, 17:11
Cita de: "Altareum"
Cuando abres una conexión a mysql, haces una consulta, abres un archivo, PHP utiliza punteros para lo cual maneja un identificador. Lo que ves: Resource id #4 es un identificador como esos.

Lo mismo pasa si haces un echo de una conexión a mysql o a una consulta, por ejemplo:
Citar
echo mysql_connect('localhos','usuario','clave');
echo mysql_query('select * from .... ');

No puedo explicarte bien el porque, pero seguramente debe almacenar dichas respuestas en memoria para lo cual usa un puntero (es lo más problable), o que guarde dichos datos en un archivo, o bien que mysql se comunique de esa forma. Y el identificador es como decir que pasa la posición de memoria en la cual debe buscar la información o en que archivo.


No se bien que estás imprimiendo para ver eso, pero si estás queriendo saber el error de mysql tienes dos funciones:
mysql_error();
mysql_errno();

mysql_errno te dará el número correspondiente al error, el cual puedes verlo en la siguiente página:
Mysql Error Codes and Messages (http://dev.mysql.com/doc/refman/5.0/en/error-handling.html)


Espero que te sirva.
Altareum.
Gracias Altareum, lo malo es que estoy usando postgres; en caso voy a buscar algo por el estilo pg_error(), pg_errno().
Título: Re: Pcon:resource Id #4
Publicado por: javier3 en Viernes 22 de Diciembre de 2006, 21:14
holaaa haber te digo ese mensaje que te sale no es ningun error
Código: Text
  1.  
  2. &#036;InstruccionSQL = &#34;SELECT * FROM tablita WHERE campo1 = 1&#34;;
  3. echo &#036;result = pg_Exec( &#036;db, &#036;InstruccionSQL );
  4.  
  5.  
esto te imprime lo siguiente
Resource id #3

Código: Text
  1.  
  2. &#036;InstruccionSQL = &#34;INSERT INTO tablita (campo1) VALUES (2)&#34;;
  3. echo &#036;result = pg_Exec( &#036;db, &#036;InstruccionSQL );
  4.  
  5.  
esto te imprime lo siguiente
Resource id #4


lo que estas haciendo es un echo a una variable de tipo recordset.
y ese te retorna ese valor que puede variar de numero, tanto para mysql ó postgres maneja similar los mensajes

solo basta con quitar los echo donde no van y punto, esto no quiere decir que exista algun error.
Título: Re: Pcon:resource Id #4
Publicado por: RadicalEd en Viernes 22 de Diciembre de 2006, 22:34
A veces soy un tanto inteligente, miren como tenia el código
Código: Text
  1. function connectdb() {
  2.     &#036;cmdo  = &#34;&#34;;
  3.     &#036;cmdo .= &#34;host=127.0.0.1 &#34;;
  4.     &#036;cmdo .= &#34;port=5432 &#34;;
  5.     &#036;cmdo .= &#34;dbname='sistemaouv' &#34;;
  6.     &#036;cmdo .= &#34;user='sa_sistemaouv' &#34;;
  7.     &#036;pcon = pg_connect( &#036;cmdo );
  8.     echo &#34;pcon:&#34;. &#036;pcon;
  9.     exit;    
  10.     return &#036;pcon;
  11.  
Por ese hermoso exit en la penúltima linea no entraba al programa :P  :scream:
Título: Re: Pcon:resource Id #4
Publicado por: Mollense en Sábado 23 de Diciembre de 2006, 00:57
:D Claro !
Título: Re: Pcon:resource Id #4
Publicado por: Mollense en Sábado 23 de Diciembre de 2006, 02:56
Cita de: "Angel_K_ido"
:D Claro !
----------------------------------

Si todabía querés saber, para posgres los errores se detectan con:

"string pg_errormessage ( int connection)"

:ball:  Perdón, apreté Citar en vez de Modificar