Retroceder   Foros del Web > Programación para sitios web > PHP > PHP orientado a objetos

Respuesta
 
Herramientas Desplegado
Antiguo 02-jun-2005, 10:12   #1 (permalink)
andreusup ha deshabilitado el karma
 
Fecha de Ingreso: enero-2005
Mensajes: 34
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?

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?

Última edición por andreusup; 02-jun-2005 a las 10:41.
andreusup está desconectado   Responder Citando
Antiguo 02-jun-2005, 10:43   #2 (permalink)
andreusup ha deshabilitado el karma
 
Fecha de Ingreso: enero-2005
Mensajes: 34
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!
andreusup está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 22:46.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93