Comunidad de diseño web y desarrollo en internet online

trancado con flash - php y MySQL

Citar            
MensajeEscrito el 07 Abr 2011 04:26 am
buenas noches tengo un gran problema con un login hecho en flash - php y bd pongo toda la info a ver en que me ayudan:

en el flash puse fotograma 1 (actions)

Código ActionScript :

stop();
user="";
pass="";
email="";
mc.alert="";
this.onEnterFrame = function () {
   // Valid User
   if(_root.checklog == 1){
      if(!logout){
         gotoAndStop(4);
      }
   }
   // Invalid User
   if(_root.checklog == 2){
      mc.alert = "SE REQUIERE USUARIO Y PASSWORD!";
   }
}


en el boton de envio lo siguiente:

Código ActionScript :

on (release) {
   if (user != "" && pass != "")
   {
      _global.logout = false;
      loadVariablesNum("newlogin.php", 0, "POST");
   }
   if (user == "")
   {
      mc.alert = "INGRESE NOMBRE DE USUARIO!";
   }
   if (pass == "")
   {
      mc.alert = "INGRESE PASSWORD!";
   }
   if ((user == "") and (pass == ""))
   {
      mc.alert = "USUARIO Y PASSWORD INCORRECTO!";
   }

}


en el php register:

Código PHP :

<?php

// set your infomation.

$dbhost='localhost';

$dbusername='root';

$dbuserpass='';

$dbname='regform';

// connect to the mysql database server.

mysql_connect ($dbhost, $dbusername, $dbuserpass);

if (!mysql_select_db($dbname)) die(mysql_error());

$name = $_POST['name'];

$pass = $_POST['pass'];

$email = $_POST['email'];

$query = "INSERT INTO member (username, password, email) VALUES('$name','$pass','$email')";

mysql_query($query) or die(mysql_error());

echo "$Registro Exitoso!";

?>



en el php newlogin:

Código PHP :

<?

$user=$_POST['user'];
$pass=$_POST['pass'];

//connect to database
if ($user && $pass){
   mysql_pconnect("localhost","root","") or die ("didn't connect to mysql");
   mysql_select_db("regform") or die ("no database");

//make query
$query = "SELECT FROM member WHERE username = '$username' AND password = '$password'";
$result = mysql_query( $query ) or die ("didn't query");

//see if there's an EXACT match
$num = mysql_num_rows( $result );
if ($num == 1){
   print "status=You're in&checklog=1";
   } else {
   print "status=Sorry, but your user name and password did not match a user name/password combination in our database.  Usernames and passwords are entered in from a different file.  Thank you for visiting test login script!!&checklog=2";
}
}

?>


tabla de la base de datos:

Código :

CREATE TABLE `member` (
  `id` int(4) unsigned zerofill NOT NULL auto_increment,
  `username` text collate latin1_general_ci,
  `password` text collate latin1_general_ci,
  `email` text collate latin1_general_ci,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ;


lo estoy probando todo desde localhost con el programa wampserver.
explico:
tengo todo listo, entro en la parte de login donde tambien esta el boton de registro, me meto en registrar y lleno todo, le doy registro y todo bien, entro en la base de datos y me aparese el registro con los datos: user= mi usuario pass=mi password mail= mi correo, eso quiere decir que esta enviando info a la base de datos hasta alli todo bien, cuando me devuelvo a entrar, pongo mi nombre de usuario y contraseña pero no pasa nada, en firefox me aparece en la parte inferior "leyendo desde localhost" y alli estoy pegao! alguien que me eche una mano??? :(

Por flabio5

4 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Abr 2011 04:13 pm
probaste con un formulario en html para visualziar que error existe? ya que el flash no parseara los errores de php con el loadVars y por ende no te lo mostrara

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 07 Abr 2011 04:17 pm

tuadmin escribió:

probaste con un formulario en html para visualziar que error existe? ya que el flash no parseara los errores de php con el loadVars y por ende no te lo mostrara


Hola, la verdad es que me he especializado en flash y apenas estoy empesando con dreamweaver, me gustaria que me dijeras mas especificamente como le hago? osea para probarlo en html! gracias por la pronta respuesta!

Por flabio5

4 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Abr 2011 04:32 pm
bueno ok esta vez jeejc reo que hagas un copy y paste

Código HTML :

<form name="formulario_de_login" method="post" action="newlogin.php">
   <input type="text" value="nombre de usuario" name="user"/>
   <br />
   <input type="text" value="nombre de usuario" name="pass"/>
   <button type="submit">logearse</button>
</form>

eso lo copias y lo guardas con extension ".html" y lo pruebas mejor sie s con firefox tiene que estar en la misma localizacion que tu archivo "newlogin.php"

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 07 Abr 2011 05:12 pm
ya lo pruebo y te digo!

Por flabio5

4 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Abr 2011 05:42 pm
hermano ya hice lo que me digiste, cuando le meto usuario y contraseña le doy enviar y me manda al newlogin.php y la pagina se queda en blanco! que deberia aparecer?

Por flabio5

4 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Abr 2011 06:30 pm
No se si esto sirva de algo pero tembien les envio en codigo HTML de la pagina que contiene el .SWF

Código HTML :

 <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Telecomunicaciones Fams, C.A.</title>
<script type="text/javascript" src="swfobject.js"></script>
<link rel="stylesheet" href="JS\index.css" type="text/css">
<script type="text/javascript">
</script>
</head>
<body background="images/BackgroundImage.jpg" bgcolor="#000000">
<TABLE cellSpacing=0 cellPadding=0 width="100%" height="100%" align=center border=0>
      <td height="2%" background="bgtile.jpg"></td>
   </tr>
   <tr>
      <td height="96%" align=center bgcolor="#000000">
   <div id="flashcontent" style="width:100%; height:100%" style="background-color:#000000">
   <embed type="application/x-shockwave-flash" src="telefams.swf" id="index" name="index" scale="noscale" salign="lt" align="middle" quality="high" width="100%" height="100%"></div>
   <script type="text/javascript">
      var so = new SWFObject("telefams.swf", "index", "100%", "100%", "8", "");
      so.write("flashcontent");
   </script>
      </td>
   </tr>
   <tr>
      <td height="2%" background="bgtile.jpg"></td>
   </tr>
</table>
</body>
</html>

Por flabio5

4 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Abr 2011 07:17 pm
pues segun tu condicional debereia aparecer

Código PHP :

if ($num == 1){ 
   print "status=You're in&checklog=1"; 
   } else { 
   print "status=Sorry, but your user name and password did not match a user name/password combination in our database.  Usernames and passwords are entered in from a different file.  Thank you for visiting test login script!!&checklog=2"; 
} 

aunque creo que el error esta en

Código PHP :

if ($user && $pass){ 

si quieres comprobar que una variable existe tienes que usar "isset" y si quieres saber si esta vacio la funcion "empty"
reemplaza esto

Código PHP :

$user=$_POST['user']; 
$pass=$_POST['pass']; 
 
//connect to database 
if ($user && $pass){ 

por esto

Código PHP :

//esto es la forma abreviada de un If else
$user= isset($_POST['user'])  ? $_POST['user'] : ''; 
$pass= isset($_POST['pass']) ? $_POST['pass'] : ''; 
 
//comprobamos que las cadenas no esten vacias
if (!empty($user) && !empty($pass) )
{ 

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 07 Abr 2011 07:35 pm
ya lo hice, si dejo alguna de las 2 casillas vasias me lanza el error que falta nombre de usuario o falta password, si me registro nuevamente me crea el registro en la BD hasta alli todo bien, pero cuando pongo usuario y contraseña le doy entrar me sigue diciendo: transfiriendo datos desde localhost, otra cosa que me di cuenta es que si pongo una contraseña que no es igual me sigue diciendo: transfiriendo datos desde loclahost...

de verdad que me estoy reventando la cabeza y he cambiado parametros en todos lados y de verdad que no consigo hacerle foncionar!

me he leido manuales como no tienes idea y he entrado como a 50 foros y en ninguno encuentro alguna manera. de que forma deberia hacer la pregunta para buscarla en la web?

gracias por todo lo que estas haciendo por mi!!!

Por flabio5

4 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Abr 2011 09:57 pm
yo me referia a que si te imprimia
"status=You're in&checklog=1"
o
"status=Sorry, but your user name and password did not match a user name/password combination in our database. Usernames and passwords are entered in from a different file. Thank you for visiting test login script!!&checklog=2"
haz probado que tu consulta devuelve valores?
osea algo como
[sql]
SELECT FROM member WHERE username = 'pedro' AND password = '123456';
[/sql]
claro eso lo haces con un usuario valido que registraste

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 07 Abr 2011 09:59 pm
nada eso no me lo muestra! quiere decir que no esta recibiendo la info de la base de datos!

Por flabio5

4 de clabLevel



 

firefox

 

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