Comunidad de diseño web y desarrollo en internet online

ayuda con login... flex, php mysql y weborb

Citar            
MensajeEscrito el 30 Jun 2010 10:38 pm
wenas a todos ya tenia rato que no escribia por aqui... oigan llevo 3 semanas intentando conectar php mysql y flex mediante weborb pude hacerlo por un tuto que encontre muyy bueno!!

les dejo la liga: http://www.cristalab.com/tutoriales/conectar-flex-3-con-php-usando-weborb-c243l/

PEROOOOOO!!!


no es lo que necesito U_U solo pude establecer la comunicacion y comprobar de que se puede unir flex y php

lo que necesito es realizar un login con flex, php y mysql, tengo los archivos hechos en php y la base de datos que funciona muy bien pero solo con php... estoy tratando de mudar todo eso a flex el problema es que no puedo vincular los textbox de php a unos textbox en flex U_U

alguien me puede ayudar?? u orientar con un tutorial bien explicado...


Encontre varios tutos, unos dicen que son para novatos pero no vi nada para novato XD estan muy dificiles de realizar

(ejemplo: http://www.cristalab.com/tutoriales/conectar-flex-php-mysql-y-weborb-para-novatos-c231l/)
ya que se saltan muchos pasos... (Eso provoca un remolino de ideas en mi cabeza, y me revuelbo)


porfavor ayuda!!

Por juramy

Claber

217 de clabLevel

2 tutoriales

 

Programador

msie8
Citar            
MensajeEscrito el 01 Jul 2010 05:36 am
Coincido contigo en que hay tutos que no estan bien separados para comprenderlos y reutilizarlos, ya me ha pasado y tuve que comprender como funcionaba todo (despues de muuuuchas pruebas).

No conozco un tutorial a la mano completo que te ayude pero te puedo responder algunas cosas hasta que logres armarlo.

Para lo que dices de vincular un textbox de php con uno de Flex, eso suena enrredado porque no tiene sentido ya que son 2 frontend independientes.
Vamos por partes, ¿en tu php para el login pasas "user" y "password" por un VO (WebORB) o por directamente por POST (HTTP) ?
Segun sea el caso armaremos el RemoteObject o HTTPServices para que logres tu "envio de datos" y "obtener una respuesta" del php.

El uso de una Interfaz hecha en Flex que pueda enviar y recibir datos a una Base de Datos se logra por cualquier lenguaje y es al final solo un "envio y recepción de datos", y puede ser con cualquier lenguaje y por varias formas segun nos lo permita el protocolo HTTP (POST/GET, RESTFull, SOAP, HEADER, etc).

Hasta aquí creo que ya te oriente para que empieces y si ya pasate de comprender estos puntos entonces vamos con el código y nos muestras lo que tienes hecho.

Por Otaku RzO

BOFH

1890 de clabLevel

12 tutoriales
1 articulo

Genero:Masculino   Desarrollador de GAIA Bastard Operators From Hell

Lima - Perú

firefox
Citar            
MensajeEscrito el 01 Jul 2010 10:11 pm
este es un login... lo pueden copiar y pegar en un .xml

Código Flex :

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
   <mx:states>
      <mx:State name="inicio">
         <mx:RemoveChild target="{panel1}"/>
         <mx:AddChild position="lastChild">
            <mx:Button x="317" y="263" label="Regresar" click="currentState=''"/>
         </mx:AddChild>
      </mx:State>
   </mx:states>

<mx:Script>
<![CDATA[
   import mx.rpc.events.ResultEvent;
   
private function checkLogin(evt:ResultEvent):void
{
   if(login_user.lastResult.loginsuccess == "yes")
   {
   currentState = "Logged In";
   }
   if(login_user.lastResult.loginsuccess == "no")
   {
      mx.controls.Alert.show("Invalid username/password");
   }      
}
]]>
</mx:Script>

<mx:HTTPService id="login_user" result="checkLogin(event)" method="POST" url="http://localhost/login.php" useProxy="false">
<mx:request xmlns="">
<username>{username.text}</username>
<password>{password.text}</password>
</mx:request>
</mx:HTTPService>

   <mx:Panel width="250" height="218" layout="absolute" horizontalCenter="-1" verticalCenter="8" title="Login" id="panel1">
   
      <mx:Label x="10" y="10" text="Usuario"/>
      <mx:Label x="10" y="66" text="Password"/>
      <mx:Button x="84" y="146" label="Entrar" id="Submit" click="currentState='inicio'"/>
      <mx:TextInput x="10" y="36" width="210" id="username"/>
      <mx:TextInput x="10" y="92" width="210" id="password"/>
   </mx:Panel>
   
</mx:Application>




este es el php

Código PHP :

<?php
//connect to the database
$mysql = mysql_connect("localhost","root","mysql") or die(mysql_error());
//select the database
mysql_select_db( "flex" );
//asign the data passed from Flex to variables
$username = mysql_real_escape_string($_POST["username"]);
$password = mysql_real_escape_string($_POST["password"]);
//Query the database to see if the given username/password combination is valid.
$query = "SELECT * FROM users WHERE username = '$username' AND password = '$password'";
$result = mysql_fetch_array(mysql_query($query));
//start outputting the XML
$output = "<loginsuccess>";
//if the query returned true, the output <loginsuccess>yes</loginsuccess> else output <loginsuccess>no</loginsuccess>
if(!$result)
{
$output .= "no";      
}else{
$output .= "yes";   
}
$output .= "</loginsuccess>";
//output all the XML
print ($output);
?>


esta es mi base de datos

Código MySQL :

 CREATE TABLE `users` (
       `userid` int(10) unsigned NOT NULL auto_increment,
       `username` varchar(255) collate latin1_general_ci NOT NULL,
       `password` varchar(255) collate latin1_general_ci NOT NULL,
       PRIMARY KEY  (`userid`)
   ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=3;


los dos los encontre en una pagina web segui el tutorial pero no tengo la mas remota idea de como enlazarlos(almenos no lo explican en el tutorial)alguien me puede ayudar??

Por juramy

Claber

217 de clabLevel

2 tutoriales

 

Programador

msie8
Citar            
MensajeEscrito el 02 Jul 2010 03:24 am
Tienes el Flex Builder o Flash Builder?
Crea un proyecto nuevo usando el SDK 3.5 o menor. Luego pega el codigo "xml" que pusiste arriba, que en realidad es un MXML.

El php y BD estan bien, supongo que no tienes problemas con ellos, el php sólo recibe 2 parametros "username" y "password".

Lo que falta en el MXML es la funcion de envio del httpServices: login_user.send(); .
Puedes colocar este envio en el evento enterState en el State "inicio":

Código Flex :

<mx:State name="inicio" enterState="login_user.send();">


o

puedes hacer otro llamado en el botón "Submit":

Código Flex :

<mx:Button x="84" y="146" label="Entrar" id="Submit" click="login();'"/> 

y en el código:

Código ActionScript :

private function login():void
{
login_user.send();
currentState='inicio';
}


Puedes apoyarte de cualquier evento que ocurrá.

Creo que era lo que faltaba.

En el MXML el HTTPService es el que se encarga de hacer los llamados al PHP (y no es la única forma).
HttpServices es casí equivalente a URLLoader en AS3.

Por Otaku RzO

BOFH

1890 de clabLevel

12 tutoriales
1 articulo

Genero:Masculino   Desarrollador de GAIA Bastard Operators From Hell

Lima - Perú

firefox
Citar            
MensajeEscrito el 02 Jul 2010 02:45 pm
estoy con flex builder 3

mmm ya hice lo que me indicas pero sigo sin poder U_U

cuando ejecuto el programa... al darle click al boton "entrar" sin escribirle ningun dato en los campos de "password" y "usuario" puedo acceder al siguiente state NO RECONOCE EL PHP aun... :cry:


NOTA: Si me ayudan entre todos prometo hacer una guia de como hacer el login con php mysql y flex con todo lo que se recopile de este post

Por juramy

Claber

217 de clabLevel

2 tutoriales

 

Programador

msie8

 

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