Foros del Web » Creando para Internet » Flash y Actionscript »

Ayuda por favor con este login

Estas en el tema de Ayuda por favor con este login en el foro de Flash y Actionscript en Foros del Web. Mi pregunta es la siguiente, por que tengo este trabajo que no me está funcionando Ya que no se me conecta a la base de ...
  #1 (permalink)  
Antiguo 13/12/2005, 21:22
Avatar de shamuray  
Fecha de Ingreso: agosto-2004
Ubicación: Capital Federal, Argentina
Mensajes: 142
Antigüedad: 19 años, 8 meses
Puntos: 0
Ayuda por favor con este login

Mi pregunta es la siguiente, por que tengo este trabajo que no me está funcionando
Ya que no se me conecta a la base de datos creo , va eso lo pueden ver por sus propios ojos. El ejemplo esta en
http://otraweb.webcindario.com

usuarios y password creadas para probar "shamuray" passw "234567"

Pero acá abajo pongo los datos más importantes ya que una vez cargada la base de datos
debería funcionar....
Necesito solucionarlo o si tienen alguna sugerencia soy todo oídos
Para bajarlo completo lo tienen en http://otraweb.webcindario.com/login.zip

Tengo creada una base de datos que es la siguiente
CREATE TABLE datos (
userID int(20) unsigned NOT NULL auto_increment,
username varchar(15) NOT NULL default '0',
password varchar(32) NOT NULL default '0',
mail varchar(255) NOT NULL default '',
PRIMARY KEY (userID)
) TYPE=MyISAM;

tengo un .swf con los siguientes campos

usuario ; la instancias de su campo es “nickname”

password; la instancia del campo es “password”

un botón de validación con su instancia “loginbtn”

Código de AS y más abajo adjunto el archivo checar.php

Código AS

stop();
var enviar:LoadVars = new LoadVars();
var recibir:LoadVars = new LoadVars();
loginbtn.onRelease=function()
{
if(nickname.text != "" && password.text != "")
{
enviar.nickname=nickname.text;
enviar.password=password.text;
enviar.sendAndLoad("http://otraweb.webcindario.com/checar.php",recibir,"POST");
recibir.onLoad = function(exito) {
if (exito){
if (this.confirmado==1){
trace("Se han aceptado los datos.");
error.text="Datos Aceptados :D.";
gotoAndStop(3);
} else {
trace("Lo siento no se aceptaron los datos");
error.text="Nombre de usuario o contraseña no validos XD";
}
}
else{
trace ("error en la ejecucion del script externo");
}
}
}
else{
error.text="Llena todos los campos :D"
}
}

nickname.restrict = "a-z0-9"
password.restrict = "a-z0-9";

registerbtn.onRelease=function()
{
gotoAndStop(2);
}


checar.php

<?php

$db_conexion = mysql_connect("mysql.webcindario.com","usuario", "mi_passw") or die(mysql_error());

/* aqui llamo a la base de datos */
$db = mysql_select_db("datos", $db_conexion) or die (mysql_error());

/* igualo las variables enviadas */
$username = $_POST['nickname'];
$pass = $_POST['password'];

/* se insertan las variables en la tabla */
$Query = "SELECT username,password FROM datos WHERE username='".$username."' && password='".$pass."'";

$checado= mysql_query($Query,$db_conexion);
echo "&confirmado=".mysql_num_rows($checado);

mysql_close($db_conexion);
?>


Desde ya "Muchas gracias"

"Salu2"
__________________
:pirata: •´¯¥¯•Ð€MØNiØ•´¯¥¯• :pirata:
  #2 (permalink)  
Antiguo 14/12/2005, 11:56
 
Fecha de Ingreso: noviembre-2005
Mensajes: 35
Antigüedad: 18 años, 4 meses
Puntos: 0
A ver si esto te sirve, cambiá por tus datos. La variable nombres viene del formulario de flash, podés traer todas las variables que quieras
Código PHP:
<?php
mysql_connect
("localhost""pass""usuario") or
   die(
"Could not connect: " mysql_error());
mysql_select_db("basededatos");
$nombres $_POST['nombres']; 


$result mysql_query("SELECT * FROM tabla WHERE nombres= '$nombres'");
if (!
$result) {
   echo 
'Could not run query: ' mysql_error();
   exit;
}
$row mysql_fetch_row($result);

echo 
"&&mensaje=  $row[1] &&nombres= $row[2] ";
?>
fijate que &&mensaje y &&nombres son las variables que devuelve al swf.
entonces en el flash tiene que estar así, te lo pongo apartir del if(exito).
Código:
if (exito) {
		//Hace que el campo de texto "mensaje_txt" reciba codigo HTML
		_root.comenta_txt.html = true;
				_root.apellidos_txt.html = true;
				_root.comenta_txt.htmlText = this.mensaje;
				_root.apellidos_txt.htmlText = this.nombres;
	} else {
		//Muestra un mensaje de error en negrita
		_root.comenta_txt.htmlText = "<b>Error en el Script</b>";
	}
};
espero que te sirva. Saludos
__________________
Patito

:adios:
:pensando:
  #3 (permalink)  
Antiguo 14/12/2005, 14:48
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 18 años, 6 meses
Puntos: 1
Yo no tengo mucha idea de todo esto, algun dia me tendre que meter
Pero seria de mucha ayuda para el usuario y para ti mismo que pusieras un campo de texto informativo de qué proceso se esta dando a lugar. Podrias llamarle estado y que mientras no haya llegado la respuesta del php que ponga enviando datos o algo asi...

Un saludo y suerte con el asunto!

ArgoN
  #4 (permalink)  
Antiguo 14/12/2005, 18:53
Avatar de shamuray  
Fecha de Ingreso: agosto-2004
Ubicación: Capital Federal, Argentina
Mensajes: 142
Antigüedad: 19 años, 8 meses
Puntos: 0
Ok, lo voy a probar Patriv gracias, y sip ArgoN la parte comunicacional con el usuario la voy a tener en cuenta pero primero tengo que sacar funsionando el login para agregarlo al sitio... Gracias de todos modos por la crítica constructiva...
"Salu2"
__________________
:pirata: •´¯¥¯•Ð€MØNiØ•´¯¥¯• :pirata:
  #5 (permalink)  
Antiguo 14/12/2005, 19:26
Avatar de shamuray  
Fecha de Ingreso: agosto-2004
Ubicación: Capital Federal, Argentina
Mensajes: 142
Antigüedad: 19 años, 8 meses
Puntos: 0
sigue con el mismo problemilla actualicé con los cambios en la dirección de prueba y me sigue dando el mismo error, paracería como que no se communica la base de datos con el formulario Login :(

Ahora el código del flash me quedo así...

stop();
var enviar:LoadVars = new LoadVars();
var recibir:LoadVars = new LoadVars();
loginbtn.onRelease=function()
{
if(nickname.text != "" && password.text != "")
{
enviar.nickname=nickname.text;
enviar.password=password.text;
enviar.sendAndLoad("http://www.chocostudios.com/checar.php",recibir,"POST");
recibir.onLoad = function(exito) {
if (exito) {
//Hace que el campo de texto "mensaje_txt" reciba codigo HTML
_root.comenta_txt.html = true;
_root.apellidos_txt.html = true;
_root.comenta_txt.htmlText = this.mensaje;
_root.apellidos_txt.htmlText = this.nombres;
} else {
//Muestra un mensaje de error en negrita
_root.comenta_txt.htmlText = "<b>Error en el Script</b>";
}
};
}
else{
error.text="Llena todos los campos :D"
}
}

nickname.restrict = "a-z0-9"
password.restrict = "a-z0-9";

registerbtn.onRelease=function()
{
gotoAndStop(2);
}



Un salvavidas por favor!!!

"Salu2"
__________________
:pirata: •´¯¥¯•Ð€MØNiØ•´¯¥¯• :pirata:
  #6 (permalink)  
Antiguo 15/12/2005, 06:57
 
Fecha de Ingreso: noviembre-2005
Mensajes: 35
Antigüedad: 18 años, 4 meses
Puntos: 0
Shamurai:
Empezá por ver si funciona el php, probá esa rutina en el server y fijate si se comunica con la base de datos y hace todo lo que vos querés. Una vez que eso esté ok. vas a estar mas tranqui para encarar la parte de flash. Fijate que ahora te da error el php, probablemente estés poniendo mal el user o el password, preguntá a la gente que te da alojamiento los datos exactos para acceder a tu bd. Suerte!!, fijate y avisame.
__________________
Patito

:adios:
:pensando:
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:23.