Comunidad de diseño web y desarrollo en internet online

Consultor

Citar            
MensajeEscrito el 05 Ene 2006 09:50 pm
Ok, estoy tratando de conectarme a una base de datos con el archivo testConsultor de fred. Pero me manda este error

Consultando
AMFPHP Error
En la linea 217
Nivel del error: User Error
------------------------------
no class named Consultor is known to the gateway
TrazandoObjeto
\tline->217
\tlevel->User Error
\tdetails->/var/www/html/metrologia/remoting/app/Executive.php
\tdescription->no class named Consultor is known to the gateway
\tcode->256


Tengo el archivo Consultor.php en el directorio /var/www/html/metrologia/remoting/services/Consultor.php

y mi gateway esta en
/var/www/html/metrologia/remoting/gateway.php

Que podra ser?

Por manuel_cfe

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Ene 2006 12:59 am
mmmm, ¿Podrias publicar la URL donde esta eso, o el codigo del constructor de Control.as?

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

firefox
Citar            
MensajeEscrito el 06 Ene 2006 02:36 pm
Ok, ya no me marca ese error, tenia un horror de dedo.... Aqui esta el codigo de Consultor.php

Código :

<?php
//Clase de conexión simple y consulta a base de datos "Consultor"
//  Devuelve un recordset de una consulta a Flash
//  Facilmente extensible usando programación orientada a objetos
//  Freddie® - http://www.cristalab.com/
class Consultor{
   function Consultor(){
      $this->methodTable = array(
         "consulta" =>array (
            "description" => "Devuelve un objeto RecordSet a Flash de una consulta pasada por parametro",
            "access" => "remote",
            "arguments" => array("sql")
         )
      );
   }
   function consulta($sql){
      /*
         Los datos de la base de datos MySQl
         El nombre de usuario, el password de acceso y obviamente el nombre de la base de datos
         
         CAMBIALOS!!! a los tuyos del servidor o no funcionara
      */
      //$cons_user = "root";
      //$cons_pass = "";
      //$cons_db = "cc05";
      //Conecta a la base de datos
      $dbh=pg_connect("host=xxx.xxx.xxx.xxx port=5432 user=xxx dbname=xxx" ) or die("No se pudo conectar a la base de datos");
      //Selecciona la base de datos
      //mysql_select_db ($cons_db);
      //Guarda el resultado de la consulta en un identificador (Puntero)
      $resultado=pg_query($sql);
      pg_close($dbh);
      //Retorna lo obtenido
      return $resultado;
   }
}
?>


Quiero conectarme a una base de datos de Postgres, pero no me muestra nada mi datagrid en el swf al momento que lo ejecuto.

Este es mi codigo del .fla

Código :

import Conexion;
import mx.remoting.RecordSet;
var db:Conexion = new Conexion();
db.consulta("SELECT id_edo, descripcion FROM estados");
db.onConsulta = function(rs) {
   nombre_txt.text = rs.getItemAt(0).id_edo;
};


y este de mi conexion.as

Código :

import mx.remoting.NetServices;
import mx.remoting.Connection;
import mx.remoting.RecordSet;
import mx.remoting.NetServiceProxy;
dynamic class Conexion {
   private var conn:Connection;
   private var serv:NetServiceProxy;
   private var servSend:NetServiceProxy;
   private var padre;
   public var onConsulta:Function;
   function Conexion() {
      NetServices.setDefaultGatewayUrl("http://xxx/metrologia/remoting/gateway.php");
      conn = NetServices.createGatewayConnection();
   }
   private function errorAMF(data) {
      trace("AMFPHP Error");
      trace("En la linea "+data.line);
      trace("Nivel del error: "+data.level);
      trace("------------------------------");
      trace(data.description);
      padre.traceObj(data);
   }
   public function consulta(SQL:String) {
      trace("Consultando");
      var envio:Object = new Object();
      envio.padre = this;
      envio.onStatus = this.errorAMF;
      envio.consulta_Result = function(data) {
         var rs:RecordSet = data;
         //trace("Datos: "+rs.getLength());
         this.padre.onConsulta(rs);
      };
      servSend = conn.getService("Consultor", envio);
      servSend.consulta(SQL);
   }
   function traceObj(obj) {
      trace("TrazandoObjeto");
      for (var i in obj) {
         trace("\\t"+i+"->"+obj[i]);
      }
   }
}


Por favor iluminimen con su sapiencia

Por manuel_cfe

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Ene 2006 03:16 pm
Ahora me marca esto:

Consultando
AMFPHP Error
En la linea 357
Nivel del error: User Notice
------------------------------
The recordset filter class pgsqlRecordSet was not found
TrazandoObjeto
\tline->357
\tlevel->User Notice
\tdetails->/var/www/html/metrologia/remoting/io/AMFSerializer.php
\tdescription->The recordset filter class pgsqlRecordSet was not found
\tcode->1024


Necesito un rayo divino 8)

Por manuel_cfe

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Ene 2006 03:58 pm
pgsqlRecordSet was not found...

Eso me suena a error de instalación de las librerias de postgres en PHP, nada relacionado directamente con Remoting, revisa mejor que la conexión a postgres con PHP la puedas hacer con medios normales primero, luego pruebalo ya en remoting

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

firefox
Citar            
MensajeEscrito el 06 Ene 2006 04:41 pm
:? Fred, no creo que sea error de librerias de hecho he estado trabajando muy bien con conexiones de php a postgresql sin ningun problema

ejemplo:
<documento>
<?php

/* Script para recuperar tuplas de la base de datos en pg */
$link = pg_connect("host=xxx.xxx.xxx.xxx port=5432 user=patito dbname=metrologia" );

$serie = $_GET['serie'];
/* $usuario2 = "grtor-ct" ; */
/* echo "Variable $usuario2"; */


$sql ="select * from archivos where serie = '$serie' ";
//$sql .=" order by ns";
$result = pg_query($sql) or die( "Error en el query: $sql. " . pg_last_error($link));
$renglones = pg_num_rows($result);
//print " Son $renglones renglones" ;
if (pg_num_rows($result)>0) {
echo "<calibraciones>";
while($row = pg_fetch_array($result)) {
echo
"<equipos>
<archivo>" . $row["archivo"] . "</archivo>
<url>" . $row["url"] . "</url>
</equipos>";
}
echo "</calibraciones>";
}
else if (pg_num_rows($result)==0) {
$error1="Sin calibraciones";
$error2="nada";
echo "<calibraciones>";
echo "<equipos>
<archivo>" . $error1 . "</archivo>
<url>" . $error2 . "</url>
</equipos>";
echo "</calibraciones>";
}

pg_close($link);
?>
</documento>


Repito esto funciona sin ningun problema.... ayudenme :wink:

Por manuel_cfe

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Ene 2006 04:45 pm
Pues, creeme, no tengo idea; si hiciste bien el cambio en "Consultor.php", no deberia dar problemas; te recomendaria entrar a www.amfphp.org y ver la documentación a nivel de postgres y remoting

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.