Comunidad de diseño web y desarrollo en internet online

Leyendo una Tabla- Flash Remoting

Citar            
MensajeEscrito el 10 Mar 2005 08:56 pm
Me da gusto, ver que la gente le ha interesado el tema de remoting, si ya hiciste el tutorial, hay te va un complemento, para que comienzes a ver el potencial

IMPORTANTE: no sigas leyendo si no has hecho este tutorial:
http://www.cristalab.com/vertutorial.php?id=87

Voy a ser breve,ya que completaste el tuto, y me entenderas de forma facil. De cualquier manera con toda confianza pregunta dudas, lo unico que no quiero es que quieran hacer esto sin haber completado el primer tutorial.

1.- Creando el servicio.
Abre el editor que te recomende.
Pega este codigo.

Código :

<?php
class dameTabla
{
    function dameTabla()
    {
        $this->methodTable = array(
            "damela" => array(
                "description" => "Regresa una tabla",
                "access" => "remote", // Posibles valores private, public, remote
                "arguments" => array ("dato")
            )
        );
    }
    function damela($data)
    {
       $this->servidor="localhost";
       $this->db_usuario="usuario";
       $this->db_pass="pass";
       $this->db="midb";
       mysql_connect($this->servidor,$this->db_usuario,$this->db_pass);
       mysql_select_db($this->db);
      $this->sql="SELECT * FROM ".$data." LIMIT 0,30";
      $this->result=mysql_query($this->sql);
      mysql_close();
        return $this->result;
    }
}
?>

Guardalo con el nombre dameTabla.php(en la carpeta services) y formato Linux ó Unix.
En la parte de :
$this->servidor="servidor";
$this->db_usuario="usuario";
$this->db_pass="psw";
$this->db="db";
Pon los datos de una db mysql que tengas.

2.- Generando el AS 2.0.
Recuerda Si bajamos los componentes de AS 2.0.
Tenemos que ir a:
Ventana -> Otros Paneles -> Bibliotecas Comunes -> Remoting
Arrastrar los dos componentes(RemotingClasses y RemotingDebugClasses) a nuestra pelicula. y poner el siguiente codigo:

Código :

//Aqui va el uso de las clases Remoting
import mx.remoting.NetServices; 
import mx.remoting.Connection; 
mx.remoting.debug.NetDebug.initialize();
//Yo uso AS 2.0 por eso use esto de arriba.
capturaRespuesta = new Object();
capturaRespuesta.damela_Result = function(data) {
   miTabla.dataProvider=data;
};
capturaRespuesta.onStatus = function(data) {
   trace("Ocurrio un error.");
   trace("Detalles del error: "+data.description);
};
NetServices.setDefaultGatewayUrl("http://localhost/flashservices/gateway.php");
conn = NetServices.createGatewayConnection();
serv = conn.getService("dameTabla", capturaRespuesta);
serv.damela("clientes");//Aqui va el nombre de la tabla que quieres

Observa como en serv.damela("clientes");, le dices el nombre de la tabla que quieres.

Ahora solo hay que arrastrar el componente dataGrid y asignarle el nombre de instancia "miTabla".

Dale Ctrl-Enter, y listo, facil no?

Saludos ^^

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 15 Mar 2005 04:45 pm
Pues gracias, estoy empezando con php mysql y flash, ya tengo instalado el servicio, y ahora me pongo manos a la obra para provar tu minituto. Gracias!

Por Sisco

BOFH

3700 de clabLevel

12 tutoriales
4 articulos

Genero:Masculino   Bastard Operators From Hell

Catalunya

firefox
Citar            
MensajeEscrito el 15 Mar 2005 05:44 pm
Chido thanks man!

Por Aoyama

BOFH

6224 de clabLevel

6 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Bastard Operators From Hell

Webdesigner & Developer, en mis ratos libres bebo café por litros.

firefox
Citar            
MensajeEscrito el 15 Mar 2005 07:09 pm
Mucha Suerte, cualquier duda, con gusto por aqui estamos! ^^

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 25 Jul 2005 06:41 pm
me sale este error, quizas sea porq tenga los coponjentes AS 1.0

Detalles del error: no class named dameTabla is known to the gateway

Por eldervaz

BOFH

10964 de clabLevel

39 tutoriales
56 articulos

Genero:Masculino  

en algún lugar del mundo

msie
Citar            
MensajeEscrito el 25 Jul 2005 07:46 pm
el archivo del script de la clase dameTabla, se debe llamar igual que la clase :wink:

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 26 Jul 2005 04:57 pm
Ocurrio un error.
Detalles del error: no class named dameTabla is known to the gateway

me sigue saliendo ese error :(

Por eldervaz

BOFH

10964 de clabLevel

39 tutoriales
56 articulos

Genero:Masculino  

en algún lugar del mundo

msie
Citar            
MensajeEscrito el 26 Jul 2005 05:16 pm
Punto numero 1.

Es que este es un segundo paso. No un primer paso.


Ya haz hecho funcionar algo con Flash Remoting?

Responde, y luego te digo que hacer.

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 26 Jul 2005 05:19 pm
si claro, el ejemplo q hiciste y el de tmeister :D

y algunas cosas mias pero sin DB

Por eldervaz

BOFH

10964 de clabLevel

39 tutoriales
56 articulos

Genero:Masculino  

en algún lugar del mundo

msie
Citar            
MensajeEscrito el 26 Jul 2005 05:20 pm

Por eldervaz

BOFH

10964 de clabLevel

39 tutoriales
56 articulos

Genero:Masculino  

en algún lugar del mundo

msie
Citar            
MensajeEscrito el 26 Jul 2005 05:29 pm
no tengo msm :(

Pero el foro rula.

Ok , ya trabajaste con Remoting, y todo funciona. Lo mas probable es que algo en la conexión(usuario, pass y host), este mal.

Recuerda que lo que creamos son clases, en php. Por que no pruebas la clase, sin usar Flash Remoting?

Si no sabes como, pues en la carpeta services, crea un archivo llamado Debug.php.

en Debug.php:

<?
include("Servicio.php");
$miServicio=new Servicio();
echo $miServicio->metodo();
?>
Solo cambia, "Servicio", por el servicio que quieres probar.
Y "metodo", por el metodo que necesitas probar.

Para que pruebes, si desde el lado del servidor, todo va bien. :wink:

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 26 Jul 2005 05:36 pm

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 26 Jul 2005 06:03 pm
copie esto

<?php
include("dameTable.php");
$miServicio=new dameTable();
echo $miServicio->damela("cliente");
?>


y me sale este erro

Fatal error: Cannot instantiate non-existent class: dametable in c:\servidor\remoting\services\debug.php on line 3


y esto esta en el dameTable.php

Código :

<?php 
class dameTabla 
{ 
    function dameTabla() 
    { 
        $this->methodTable = array( 
            "damela" => array( 
                "description" => "Regresa una tabla", 
                "access" => "remote", // Posibles valores private, public, remote 
                "arguments" => array ("dato") 
            ) 
        ); 
    } 
    function damela($data) 
    { 
       $this->servidor="localhost"; 
       $this->db_usuario=""; 
       $this->db_pass=""; 
       $this->db="ee"; 
       mysql_connect($this->servidor,$this->db_usuario,$this->db_pass); 
       mysql_select_db($this->db); 
      $this->sql="SELECT * FROM ".$data." LIMIT 0,30"; 
      $this->result=mysql_query($this->sql); 
      mysql_close(); 
        return $this->result; 
    } 
} 
?>


a punto del suicidio :p

Por eldervaz

BOFH

10964 de clabLevel

39 tutoriales
56 articulos

Genero:Masculino  

en algún lugar del mundo

msie
Citar            
MensajeEscrito el 26 Jul 2005 06:07 pm

Código :

include("dameTable.php");
class dameTabla
function dameTabla()


como te dije, los nombres deben ser iguales :wink:

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 27 Jul 2005 03:55 am
eldervaz, checa con atención esto, veelo con calma.

eldervaz escribió:

copie esto

<?php
include("dameTable.php");
$miServicio=new dameTable();
echo $miServicio->damela("cliente");
?>


Tu error, es que mandas llamar, una clase que no existe.

La clase que no existe es:
dameTable

La clase que si existe es:
dameTabla


<?php
class dameTabla
{
function dameTabla()
{


Vamos, tu error, es que mandas llamar una clase que no existe, ese es tu error. Por ahora; Usa nuestro debug(espero tener tiempo para crear uno en forma), php. Despues prueba en flash, por lo general si te funciona en el debug.php, te funcionara en Flash.

Have a nice day ^^ and enjoy remoting!

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 27 Jul 2005 10:07 pm
salioooo, mira q salio porq cambie todo a

class dameTable
{
function dameTable()


y listoo, gracias por la pacienciaa :D

Por eldervaz

BOFH

10964 de clabLevel

39 tutoriales
56 articulos

Genero:Masculino  

en algún lugar del mundo

msie

 

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