Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Frameworks y PHP orientado a objetos (http://www.forosdelweb.com/f68/)
-   -   Método que devuelva matriz (http://www.forosdelweb.com/f68/metodo-que-devuelva-matriz-304244/)

andreusup 02/06/2005 10:12

Método que devuelva matriz
 
Hola chic@s,

tengo el siguiente problema. He hecho una clase para la gestión de los usuarios

Código PHP:

class usuBD(){
$idConsulta;
$usu_autentificado = array();
...

 function 
autentificar($usu$pase){
  
$sql="SELECT tl.pase AS pase, tu.nome AS nome, tu.rol AS rol FROM tusuarios AS tu, tlogin AS tl WHERE tl.nick='$user' AND tl.idUsu=tu.idUsu";
  
$this->consulta($sql);

  if(
$this->idConsulta){ // consulta correcta
      
while($userAut mysqli_fetch_assoc($this->idConsulta)){
           if(
$userAut['pase'] == $pass){ // usuario autentificado
                
$this->usu_autentificado('nickUsu' => $user,
                          
'nomeUsu' => $userAut['nome'],
                          
'rolUsu' => $userAut['rol']);

                 return (
$this->usu_autentificado);
      }
          else{ 
// usuario non autentificado
        
return 0;
      }
      }
  }
  else{ 
// consulta incorrecta
   
return 0;
  } 
 }

..



Vale. Entonces en otro archivo aut.php, por ejemplo, hago lo siguiente...
Código PHP:

require_once("lib.php"); // dond tengo definidas las clases
2 $usuario = new usuBD();
3 $usu_autent = array();
4 $usu_autent =
5 $usuario->autentificar($_POST['formLoginNick'],$_POST['formLoginPass']);

7 $_SESION
['nickUsu'] = $usu_autent['nickUsu'];
... 

pero obtengo el siguiente error::

Código PHP:

Fatal errorCannot use object of type mysqli_result as array in loquesea/aut.php on line 7 

Lo que me devuelve es un objeto. No puedo usar $usu_autent['nickUsu']. De acuerdo, pero cómo acceder entonces a los valores? :pensando:

Una posible solución sería registrar las variables dentro de la clase, pero quiero que el método me devuelva esos 3 valores. Prefiero registrar las variables -si procede- en otro lugar.

Alguna ayuda?

andreusup 02/06/2005 10:43

Hola de nuevo,

he encontrado el error.. estaba en:

require_once('lib.php'); NO era ese el archivo a enlazar. El código sí funciona.

Siento las molestias. Un saludo!


La zona horaria es GMT -6. Ahora son las 19:52.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.