[ Foro de PHP ]

Conexion POO

11-Apr-2023 17:34
Invitado (siREZ)
0 Respuestas

Cordial saludo
trato de logear con PHP POO

asi:

<?php
$username = $_POST['username'];
$password = $_POST['password'];

require_once('Conexion POO a BBDD.php');
include('MyClass.php');

//$obj = new MyClass();
echo "Nombre: $nombre <br> Tipo de Usuario $tipo";
?>

la conexion esta bien... pero la clase, hay algo que no funciona:

<?php class MyClass {
   private $nombre;
   private $tipo;
   private $username;
   private $password;

   public function __construct($nombre, $tipo, $username, $password) {
       $this->nombre = $nombre;
       $this->tipo = $tipo;
       $this->username = $username;
       $this->password = $password;
   }

   public function getNombre() {
       return $this->nombre;
   }

   public function getUsername() {
       return $this->username;
   }

   public function getPassword() {
       return $this->password;
   }

   public function getTipo() {
       return $this->tipo;
   }

   public function setNombre($nombre) {
       $this->nombre = $nombre;
   }

   public function setTipo($tipo) {
       $this->tipo = $tipo;
   }

   public function setUsername($username) {
       $this->username = $username;
   }

   public function setPassword($password) {
       $this->password = $password;
   }

   public function authenticate($pdo) {
       $query = "SELECT * FROM master WHERE username = :username AND password = :password";
       $stmt = $pdo->prepare($query);
       $stmt->bindParam(':username', $this->username);
       $stmt->bindParam(':password', $this->password);
       $stmt->execute();

       if ($stmt->rowCount() == 1) {
           $row = $stmt->fetch(PDO::FETCH_ASSOC);
           $this->nombre = $row['nombre'];
           $this->tipo = $row['tipo'];
           return true;
       } else {
           return false;
       }
   }
}
?>

deberia imprimir Nombre y tipo de Usuario... pero no me imprime.

Alguien me puede ayudar?

Gracias




Si ya eres usuario del sistema, puedes contestar desde tu cuenta y así ganar prestigio.

Si sólo eres un visitante, puedes optar por...