Comunidad de diseño web y desarrollo en internet online

Registro de Usuario en Flash

Citar            
MensajeEscrito el 10 Ago 2009 02:27 pm
Entre tantas inquietudes que abundan del mundo de la programación con Flash, y los códigos de php, la más conveniente o mas buscada, es unir a dichos elementos, para trabajar por medio de variables. Por ello, pienso dar este pequeño aporte, el cual dará un bosquejo y abrirá paso a todos aquellos que esten iniciando este paso tan importante de fusión de elementos y lenguajes para lograr un mismo proyecto.

Acontinuacion vamos a crear un archivo en flash, el cuál nos permitirá hacer un pequeño sistema de registros, para insertar los datos a una base de datos, al conectar el .swf como formulario, el php como manejador, y la base de datos para insertar en ella los mismo. Para ver el Sistema de Registro Trabajando Revisen Aca. Cabe destacar que para la realización de este tutorial, se aplicaron conocimientos contenidos en este documento http://it-eservice.com/BackUp%20iT-Products/Web/Intranet/Registrar/ingreso%2520de%2520usuarios%2520en%2520flash.pdf.

•Pasos

1)

Para este Tutorial de Flash+Php+MySQL usaremos una base de datos edificada de la siguiente manera:

CREATE TABLE usuarios
( id bigint(7) NOT NULL auto_increment,
usuario char(100) NOT NULL,
contrasena char(100) NOT NULL,
email char(100) NOT NULL,
nombre char(255) default NULL,
avatar char(255) default NULL,
pais char(255) default NULL,
KEY id (id))

Vamos y creamos un nuevo documento en Flash, preferiblemente de 250px por 350 px. Crea la primera capa, y llamala Fondo, en ella crea el diseño de fondo que más tu guste y creas conveniente para tu registro; ten en cuenta los campos de textos que seran necesarios.



2)

Crea una segunda capa, llamala "campos", ahora coloca los campos de texto necesarios para tu registro (yo colocare los que usare para dar el ejemplo que de vida al tutorial), los cuales deben ser "Input text"; posteriormente a ellos colocale en el nombre de instancia el correspondiente:

•Al Campo de Usuario, usuario.

•al campo de la contraseña, contrasena.

•al campo del correo electronico, email.

•al campo del nombre, nombre.

•al campo de avatar, avatar.

•al campo pais, pais.

Ten en cuenta de darle a todos los campos de texto "single line" o "linea única", con la diferencia que al campo pass deberas ponerle tipo contraseña.



3)

A continuación crear una nueva capa llamada "mensajes", en ella deberas insertar los campos de texto necesarios para los posibles errores.
a) Campo email vacío (Este error lo manejamos en el keyframe 5)
b) Campo contraseña vacío (Este error lo manejamos en el keyframe 10)
c) Campo nombre de usuario vacío (Este error lo manejamos en el keyframe 15)
d) Nombre de usuario escogido no disponible (Este error lo manejamos en el keyframe 20)
e) Dirección de Correo Electronico incorrecta (Este error lo manejamos en el keyframe 25)
f) Problemas con el servidor (Este error lo manejamos en el keyframe 30)
g) Por ultimo el mensaje de registro exitoso lo manejaríamos en el keyframe 35. Poner el mensaje de
error en el keyframe correspondiente y listo.



4)

Crea otra capa llama "boton", y en ella crearas un Boton, con nombre de instancia enviar_btn, y además deber colocar una campo de texto Dinámico o "dynamic text" con nombre de instancia "proceso".



5)


Luego de haber edificado todo el diseño y elementos que daran funcion a todo el sistema, solo nos falta el codigo ActionScript que dara la logica; para ello debes crear una capa llamada "acciones", abre el panel de Acciones y coloca el siguiente código:

Código ActionScript :

enviar = function ()
{
if (usuario.text.length)
{
if (contrasena.text.length)
{
if (email.text.length)
{
//Preparamos las variables que enviaremos al php
form_lv = new LoadVars();
form_lv.usuarioL = usuario.text;
form_lv.contrasenaL = contrasena.text;
form_lv.emailL = email.text;
form_lv.nombreL = nombre.text;
form_lv.avatarL = avatar.text;
form_lv.paisL = pais.text;
proceso.text = "cargando tus datos...";
form_lv.sendAndLoad("http://www.direcciondetuarchivo.com/registrar.php", form_lv, "POST");
//http://www.enmaracay.net/registrar.php
form_lv.onLoad = function()
{
if (this.estatus == "Ya esta siendo Utilizado")
{
proceso.text = "";
usuario.text = "";
gotoAndStop(20);
}
if (this.estatus == "normal") {
proceso.text = "";
email.text = "";
gotoAndStop(25);
}
if (this.estatus == "ok") {
proceso.text = "Registrado con exito!";
usuvar = usuario.text;
mailvar = email.text;
nombrevar = nombre.text;
avatarvar = avatar.text;
paisvar = pais.text;
usuario.text = "";
email.text = "";
nombre.text = "";
avatar.text = "";
pais.text = "";
gotoAndPlay(35);
}
if (this.estatus != "Ya esta siendo usado" && this.estatus!= "normal" && this.estatus!= "ok")
{
proceso.text = "";
gotoAndStop(30);
}
};
}
else
{
gotoAndStop(5);
}}
else
{
gotoAndStop(10);
}}
else
{
gotoAndStop(15);
}
};
enviar_btn.onRelease = enviar;
stop();




6)

Luego de haber creado todo el archivo Flash o .swf que servirá de formulario para el registro, ahora nos falta quién procese todos los datos ingresados, para ellos necesitamos crear un archivo php, que cuente con un script de captacion de datos, provenientes de las variables insertadas en el formulario (archivo .fla creado anteriormente). El código es el siguiente:

Código PHP :

<?php
include('conexion.php');
$link = Conectarse();
function quitar($mensaje)
{
$mensaje = str_replace("<","&lt;",$mensaje);
$mensaje = str_replace(">","&gt;",$mensaje);
$mensaje = str_replace("\'","'",$mensaje);
$mensaje = str_replace('\"',"&quot;",$mensaje);
$mensaje = str_replace("\\\\","\",$mensaje);
return $mensaje;
}
function comprobar_email($email){
$mail_correcto = 0;
if ((strlen($email) >= 6) && (substr_count($email,"@") == 1) && (substr($email,0,1) != "@") &&
(substr($email,strlen($email)-1,1) != "@")){
if ((!strstr($email,"'")) && (!strstr($email,"\"")) && (!strstr($email,"\\")) && (!strstr($email,"\$")) &&
(!strstr($email," "))) {
if (substr_count($email,".")>= 1){
$term_dom = substr(strrchr ($email, '.'),1);
if (strlen($term_dom)>1 && strlen($term_dom)<5 && (!strstr($term_dom,"@")) ){
$antes_dom = substr($email,0,strlen($email) - strlen($term_dom) - 1);
$caracter_ult = substr($antes_dom,strlen($antes_dom)-1,1);
if ($caracter_ult != "@" && $caracter_ult != "."){
$email_correcto = 1;
}
}
}
}
}
if ($email_correcto)
return 1;
else
return 0;
}
$comp_email = quitar($HTTP_POST_VARS["emailL"]);
$i = comprobar_email($comp_email); //llamamos a la función
if ($i != 0) //si la dirección de email es correcta...
{
$sql = "SELECT id FROM usuarios WHERE usuario='".quitar($HTTP_POST_VARS["usuL"])."'";
$result = mysql_query($sql);
if($row = mysql_fetch_array($result))
{
echo "&estatus=ocupado&";
}
else
{
$sql = "INSERT INTO usuarios (usuario, contrasena, email, nombre, avatar, pais) VALUES (";
$sql .= "'".quitar($HTTP_POST_VARS["usuarioL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["contrasenaL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["emailL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["nombreL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["avatarL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["paisL"])."'";
$sql .= ")";
mysql_query($sql);
echo "&estatus=ok&";
}
mysql_free_result($result);
mysql_close();
}
else
{
echo "&estatus=normal&"; //email incorrecto
}
?>


Si deseas puedes sustituir los campos de variables "$HTTP_POST_VARS" por "$_POST" en caso de usar PHP 5 o superior, pero también puedes dejarlo tal como esta, pues el PHP 5 trabaja, el syntax de versiones anteriores.

7)

Como podrás ver, en el código anterior incluimos un archivo externo, el cual nos permitirá conectar mediante los datos alli puestos de nuestro servidor, acceder a nuestra base de datos y dar paso a insertar nuestros datos. Dicho archivo debe llamarse "conexion.php" y esta formulado de la siguiente manera:

Código PHP :

<?
function Conectarse()
{
$db_host="localhost"; // Host correspondiente a nuestro servidor, normalmente es localhost
$db_nombre="tubase_dedatos"; // Nombre de Nuestra Base de datos
$db_user="tuusuario"; // Nombre del usuario para ingresar a nuestra base de datos
$db_pass="tucontraseña"; // Contraseña de dicho usuario
$link=mysql_connect($db_host, $db_user, $db_pass) or die ("Error conectando a la base de datos.");
mysql_select_db($db_nombre ,$link) or die("Error seleccionando la base de datos.");
return $link;
}
?>


Luego de haber finalizado el ultimo paso, ya hemos concluido y llegado al final de nuestro Tutorial de Aprendizaje para Conectar Flash+Php+MySQL y crear un sistema de registro o formulario que inserte los datos que sea de nuestro interés a una base de datos. Espero sea de gran Ayuda, y para cualquier duda estamos Aca para Ayudar. Si Desean ver el Sistema trabajando, solo entren Aca.!!!

Un Saludos a Todos, Ayudando a la Causa de "Mejorando la Web En Español", y al Grupo Técnico que encabeza nuestro Amigo Freddie.

Atte: José Alejandro Realza Asistente de Desarrollo y Soporte Técnico.


Por JoseAlejandro_Realza

63 de clabLevel



Genero:Masculino  

Incursionista de Tecnologias

firefox
Citar            
MensajeEscrito el 10 Ago 2009 03:05 pm
Muy buen aporte ^^ pero....es tuyo o es cogido integramente de el archivo Pdf de arriba?

Por Wyrm

Claber

1545 de clabLevel

15 tutoriales

 

firefox
Citar            
MensajeEscrito el 10 Ago 2009 03:19 pm
La documemtacion es del .pdf. yo solo le agregue unos detalles. Pronto hare uno para el inicio de Sesion xD

Por JoseAlejandro_Realza

63 de clabLevel



Genero:Masculino  

Incursionista de Tecnologias

firefox
Citar            
MensajeEscrito el 17 Ago 2009 03:36 am
Parece Ser Que No Fue Un Gran Aporte...

Por JoseAlejandro_Realza

63 de clabLevel



Genero:Masculino  

Incursionista de Tecnologias

firefox
Citar            
MensajeEscrito el 17 Ago 2009 06:31 am
No podemos pasar a portada contenido que fue tomado de otro sitio. Por otro lado, el código de tu aporte usa técnicas que dejaron de ser usadas hace cinco años. No aplica a la tecnología actual.

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

firefox
Citar            
MensajeEscrito el 27 Ago 2009 07:43 pm
Yeah.. los HTTP_VAR ya no se utilizan... solo que cuando habia creado el tuto y lo mande, no habian hecho el cambio en mi servidor :S

Por JoseAlejandro_Realza

63 de clabLevel



Genero:Masculino  

Incursionista de Tecnologias

firefox
Citar            
MensajeEscrito el 25 Ene 2012 07:46 am
como seria la mejor forma.. si me pueden ayudar.. help me. please..!!

apenas empiezo con un proyecto para mi escuela estudio sistemas, pero no domino bien actionscript.. me solicitaron una web con registro y login de usuarios en flash actionscript 3 con php y mysql. gracias de antemano.

Por elim

0 de clabLevel



 

chrome

 

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