Salve a tutti,
ho realizzato una classe (Database.php) per l'interazione con la base di dati.
Il sorgente è questo:
codice:
<?php
class Database
{
//Attributi
private $name = "";
private $address = "";
private $username = "";
private $password = "";
private $con;
//Metodi
public function __constuct($address, $name, $username, $password)
{
$this->address = $address;
$this->name = $name;
$this->username = $username;
$this->password = $password;
$this->con = new Mysqli($address, $username, $password, $name);
}
public function connect()
{
var_dump($this->con);
if( $this->con->connect_errno )
{
echo "con fallita: ". $con->connect_error . ".";
return false;
}
else return true;
}
?>
Per testarne il funzionamento ho utilizzato il seguente codice:
codice:
<?php
include("Database.php");
$db = new Database("localhost", "dbname", "user", "pw");
if( $db->connect() )
echo "La connessione è avvenuta con successo";
?>
Com'è possibile che nonostante il costruttore inizializzi l'attributo $con, nel momento in cui eseguo il var_dump dall'altro metodo (connect), questo mi restituisce NULL come se il costruttore non avesse inizializzato?
Questo problema lo risconto anche con tutti gli altri attributi inizializzati nel costruttore.
Qualcuno saprebbe illuminarmi?
PS: Per richiamare un metodo definito nella classe, all'interno di un altro metodo della medesima classe, qual è la sintassi da seguire?
- Grazie