¿Por que no me muestra los registros de la tabla?

Tengo este metodo: funcion logIn en php el cual deberia validar un registro de la tabla credenciales de la Base de datos, sin embargo, no realiza el objetivo y siempre me indica que los campos estan vacios o que los campos son obligatorios, pienso que tal vez sea algo con la ubicacion de las variables pero no estoy seguro.

les dejo el codigo completo para mas comprension, gracias

<?php
require "DataBaseConfig.php";

class DataBase
{
    public $connect;
    public $data;
    private $sql;
    protected $servername;
    protected $username;
    protected $contrasena;
    protected $databasename;

    public function __construct()
    {
        $this->connect = null;
        $this->data = null;
        $this->sql = null;
        $dbc = new DataBaseConfig();
        $this->servername = $dbc->servername;
        $this->username = $dbc->username;
        $this->contrasena = $dbc->contrasena;
        $this->databasename = $dbc->databasename;
    }

    function dbConnect()
    {
        $this->connect = mysqli_connect($this->servername, $this->username, $this->contrasena, $this->databasename);
        return $this->connect;
    }

    function prepareData($data)
    {
        return mysqli_real_escape_string($this->connect, stripslashes(htmlspecialchars($data)));
    }

    function logIn($table, $correo, $password)
    {
        $correo = $this->prepareData($correo);
        $password = $this->prepareData($password);
        $this->sql = "SELECT * FROM " . $table . " WHERE correo = '" . $correo . "'";
        $result = mysqli_query($this->connect, $this->sql);
        $row = mysqli_fetch_assoc($result);
        if (mysqli_num_rows($result) != 0) {
            $dbusername = $row('username');
            $dbpassword = $row('contrasena');
            if ($dbusername == $correo && password_verify($password, $dbpassword)) {
                $login = true;
            } else $login = false;
        } else $login = false;

        return $login;
    }
}

codigo del login.php

require "DataBase.php";

$db = new DataBase();

if (isset($_POST('correo')) && isset($_POST('password'))) {
    if ($db->dbConnect()) {
        if ($db->logIn("credenciales", $_POST('correo'), $_POST('password'))) {
            echo "Login Success";
        } else echo "Username or Password wrong";
    } else echo "Error: Database connection";
} else echo "All fields are required";