Comunidad de diseño web y desarrollo en internet online

rescatar el nombre de usuario

Citar            
MensajeEscrito el 23 Ene 2006 05:37 am
hola, tengo lo sgte:

Código :

//....function _login($nick, $pass) { 
       $query = "SELECT name from usuarios WHERE nick='$nick' AND pass='$pass' "; 
        $result = mysql_query($query, $this->conn); 
        if (mysql_fetch_assoc($result)) {      
        return "usuario"; 
       } 
        else { 
           return "false"; 
        } 
} 

$user, y $pass están validados con setCredentials, pero ¿cómo rescato el valor de "$name"? Quiero que el campo de bienvenida sea:
welcome.text="Bienvenido "+name;

Por juce2005

100 de clabLevel



 

msie
Citar            
MensajeEscrito el 23 Ene 2006 08:00 am
puedes guardar el nombre dentro de una sesion y despues recuperarlo con otro metodo....

Código :

function _login($nick, $pass) { 
       $query = "SELECT name from usuarios WHERE nick='$nick' AND pass='$pass' "; 
        $result = mysql_query($query, $this->conn); 
        if ($data = mysql_fetch_assoc($result)) {
         $_SESSION['name'] = $data['name'];
        return "usuario"; 
       } 
        else { 
           return "false"; 
        } 
}


funcion getName () {
     return $_SESSION['name'];
}


por el SID no te preocupes....flashremoting pasa el SID automaticamente en cada llamado a algun metodo ;)

saludos!

Por tangamampilia

.GAIA Developer

961 de clabLevel


6 articulos

Genero:Masculino   Anime Bloggers

México, D.F.

safari
Citar            
MensajeEscrito el 23 Ene 2006 12:14 pm
Hola, juce2005, que tal.

He estado algo ausente; hace poco me estube mirando lo del setCredentials en francés y no lo acabé de entender... ¿Descubriste algo nuevo?

Saludos! ^^

Por [Sheer]

Claber

283 de clabLevel

1 tutorial

Genero:Masculino  

Barcelona

opera
Citar            
MensajeEscrito el 23 Ene 2006 03:12 pm
básicamente es lo mismo del tuto de morfh.(así se escribe?), pero a pesar de que está en francés ,el code es muy parecido creo que incluso más detallado con respecto a comparar" con seguridad, el nombre de usuario y contraseña, y mostrar la tabla en donde se guardarían las sesiones para futuro uso. en teoría está bien fácil, pero lo que le hace falta es mostrar los scripts en AS. Y eso ya es pensar un poquito...(el asunto es hacerlo, probarlo y disfrutar de ello)
Aún así , alguien que tenga tiempo y paciencia de sobra y que se apiade de los novatos, podría hacer un manual papilla. por cierto, gracias a todos por su paciencia, últimamente estoy cargoseando el foro.... :oops: , suerte!!! :wink: ah...., gracias tangamampilia.!!

Por juce2005

100 de clabLevel



 

msie
Citar            
MensajeEscrito el 23 Ene 2006 04:14 pm
antes mi servicio era, y todo bien..:

Código :

<?
include_once ("Config.php");
class SecuredConn2 extends Config{
   function SecuredConn2(){
   parent::__construct($this->dbname);//Esta linea llama al constructor de la clase.  
      $this->methodTable = array( 
         "welcome" => array( 
         "description" => "validate function", 
         "access" => "remote", 
         "roles" => "usuario"          
         ),          
         "_authenticate" => array( 
         "description" => "autentificación", 
         "access" => "private", 
         "arguments" => array ("usernick","userpass") 
         ) 
      ); 
 }
function _authenticate ($usernick, $userpass) { 
       $query = "SELECT userid from usuarios WHERE usernick='$usernick' AND userpass='$userpass' "; 
        $result = mysql_query($query, $this->conn); 
        if (mysql_fetch_assoc($result)) { 
           return "usuario"; 
       } 
        else { 
           return "false"; 
        } 
} 

function welcome() { 
      return "bienvenido!!!!" ;     
   }
} 
?>

ahora tengo lo sgte:

Código :

<?
include_once ("Config.php");
class SecuredConn2 extends Config{
   function SecuredConn2(){
   parent::__construct($this->dbname);//Esta linea llama al constructor de la clase.  
      $this->methodTable = array( 
         "welcome" => array( 
         "description" => "validate function", 
         "access" => "remote", 
         "roles" => "usuario"          
         ),          
         "_authenticate" => array( 
         "description" => "autentificación", 
         "access" => "private", 
         "arguments" => array ("usernick","userpass") 
         ) 
      ); 
 }
function _authenticate ($usernick, $userpass) { 
       $query = "SELECT username from usuarios WHERE usernick='$usernick' AND userpass='$userpass' "; 
        $result = mysql_query($query, $this->conn); 
        if (mysql_fetch_assoc($result)) { 
       $_SESSION['username'] = $data['username']; 
           return "usuario"; 
       } 
        else { 
           return "false"; 
        } 
} 
function getName () { 
     return $_SESSION['username']; 
} 


function welcome() { 
      return "bienvenido!!!!" ;     
   }
} 
?>


y ahora si que no me deja entrar....

cómo rescato el valor 'username' en un campo de texto ? ;

lo sgte es el script de login.swf , este archivo se carga en el clip "mc_login" dentro de inicio.swf , cuando tengo la sesion iniciada; envio con LocalConnection el valor de usernick a otra película( no sé si fui claro..), lo mismo quiero hacer con el valor de username, porque lo necesito para insertarlo en un registro; pero con la classe anterior..(php), ya no puedo ni siquiera iniciar sesion..; no acepta .., aquí va mi AS:

Código :

import mx.remoting.Service; 
import mx.services.Log; 
import mx.rpc.RelayResponder; 
import mx.rpc.FaultEvent; 
import mx.rpc.ResultEvent; 
import mx.remoting.PendingCall; // 
var sSecured:Service = new Service("http://midominio/remoting/gateway.php", null, "SecuredConn2", null, null); 
mx.remoting.debug.NetDebug.initialize(sSecured); 
//mx.remoting.debug.NetDebug.trace() ;
loginbtn.clickHandler = function() {
   checkForm();
};
var formListener:Object = new Object();
formListener.enter = function(evt) {
   checkForm();
};
nick.addEventListener("enter", formListener);
pass.addEventListener("enter", formListener);
Selection.setFocus(nick);
function checkForm() {
   if (loginbtn.label=="login"){   
   if (nick.text.length == 0) {      
      estado.text = "Please enter user name.";      
      Selection.setFocus(nick);            
   }     
   else if (pass.text.length == 0) {
      estado.text = "Please enter password.";
      Selection.setFocus(pass);         
   }
else {
sSecured.connection.setCredentials(nick.text,pass.text);
var pcWelcome:PendingCall = sSecured.welcome(); 
pcWelcome.responder = new RelayResponder(this, "welcomeResult","welcomeFault");
}
   }
else if(loginbtn.label="entrar"){   
   logcnx=new LocalConnection();      
   logcnx.send("cnxlog","log",usernick);
   delete(logcnx);   
   _root.mcordenes.swapDepths(5);
   _root.barramenu.enabled=true;
}
}
function welcomeResult(rs:ResultEvent) {
   loginbtn.label="entrar";
   estado.text="sesion iniciada";   
   usernick=nick.text;   
   trace(rs.result); 
} 
function welcomeFault(fl:FaultEvent) {   
   estado.text="El nombre de usuario o paswword incorrectos";
   Selection.setFocus(pass);
   trace("Su usuario no esta validado");   
   trace("Hubo un problema: "+fl.fault.faultstring); 
   trace("El código del error es: "+fl.fault.faultcode); 
   trace("Detalles: "+fl.fault.detail); } 
stop();

Por juce2005

100 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 Ene 2006 07:32 pm
hola Juce...lo que veo rapido es que olvidaste declarar el metodo getName dentro del methodTable

saludos!

Por tangamampilia

.GAIA Developer

961 de clabLevel


6 articulos

Genero:Masculino   Anime Bloggers

México, D.F.

safari
Citar            
MensajeEscrito el 24 Ene 2006 08:48 pm
oki, si ya me habia dado cuenta; ... :oops: ,pero a parte de eso...

Si creo un inputText, llamado username_ti; o una variable , denominada; username en el fla-
¿ Cómo podría rescatar el valor que está guardado en : $_SESSION['username'] = $data['username'];?...
gracias tangamampilia :wink:

Por juce2005

100 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 Ene 2006 09:06 pm
No sé si es a lo que te refieres, pero podrías probar a almacenar en una variable global el valor introducido por el usuario en el momento de validarse, algo así:

Código :

var user:String;

function checkForm() { 
   if (loginbtn.label=="login"){    
   if (nick.text.length == 0) {       
      estado.text = "Please enter user name.";       
      Selection.setFocus(nick);             
   }     
   else if (pass.text.length == 0) { 
      estado.text = "Please enter password."; 
      Selection.setFocus(pass);          
   } 
else { 
user=nick.text; <-------------------
sSecured.connection.setCredentials(nick.text,pass.text); 
var pcWelcome:PendingCall = sSecured.welcome(); 
pcWelcome.responder = new RelayResponder(this, "welcomeResult","welcomeFault"); 
}


La variable user contendrá el nombre del usuario actualmente conectado.

Saludos! ^^

Por [Sheer]

Claber

283 de clabLevel

1 tutorial

Genero:Masculino  

Barcelona

opera
Citar            
MensajeEscrito el 24 Ene 2006 09:14 pm
pues es muy sencillo...ese metodo getName te devuelve un string con el nombre....nada mas haz una peticion a remoting una vez que hayas validado al usuario con setCredentials...es mas...mas facil, en el metodo welcome por ejemplo en lugar de devolver un bienvenido!!!...puedes devolver el nombre del usuario...algo asi

Código :

function welcome() { 
      return $_SESSION['username'];      
   } 
}



si tienes todo correcto, en lugar del tipico trace de welcome obtendras el nombre del usuario...

saludos!

Por tangamampilia

.GAIA Developer

961 de clabLevel


6 articulos

Genero:Masculino   Anime Bloggers

México, D.F.

safari
Citar            
MensajeEscrito el 24 Ene 2006 09:29 pm
gracias sheer;no me referia a eso , creo hay una confusión de términos..., y es porque no he sido claro...
A ver si me explico; mi tabla de usuarios tiene :usernick (que es el usuario) ;userpass ( el password) y username( el nombre real del usuario: Juan Perez, por decir.)
la consulta para validar es la siguiente:

Código :

function _authenticate ($usernick, $userpass) { 
       $query = "SELECT username from usuarios WHERE usernick='$usernick' AND userpass='$userpass' "; 
        result = mysql_query($query, $this->conn); 
        if ($data = mysql_fetch_assoc($result)) { 
         $_SESSION['username'] = $data['username']; 
        return "usuario"; 


       } 
        else { 
           return "false"; 
        } 
} 


mi recontra pregunta por mas pesada que parezca es, ¿Cómo pongo en el campo "username_txt", el valor de $SESSION['username']=$data['username'],espero haber me explicado...bien...
gracias nuevamente.

Por juce2005

100 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 Ene 2006 09:58 pm
BUeno, hice lo que me sugerió tangamampilia, pero al final,no me arroja el trace., se queda en standby. creo que hay un error en la consulta...es porque ...¿de dónde sale la variable $data , creo que la condición if, else if , no corresponde ..?a lo mejor me equivoco..

Por juce2005

100 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 Ene 2006 10:08 pm
bien amigos, efectivamente había un error en la consulta...ya me salió el trace con esto:

Código :

function _authenticate ($usernick, $userpass) { 
       $query = "SELECT username from usuarios WHERE usernick='$usernick' AND userpass='$userpass' "; 
        $result = mysql_query($query, $this->conn); 
        if (mysql_num_rows($result)!==0){
      $data =mysql_fetch_assoc($result); 
         $_SESSION['username'] = $data['username']; 
        return "usuario"; 


       } 
        else { 
           return "false"; 
        } 
} 
, ahora.., retomando mi espesa pregunta, por fis..., ¿cómo capturo éste valor (de username) en el campo username_txt ?

Por juce2005

100 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 Ene 2006 10:19 pm
y yo mismo me respondo...., ji, ji...tan ciego.!!!!; así:

username.text=rs.result; ó sino:
username= rs.result;
y lo pongo como variable en un texto dinámico.

I'm happy.!!! ^^; gracias amigos....!!!; pero siguen las preguntas.., en otra instancia de este foro...

Por juce2005

100 de clabLevel



 

msie

 

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