ciao a tutti ragazzi, scrivo perchè ho questo problema ce non riesco proprio a risolvere, sto creando un sistema di login con php e postgres.
Ho cretato una classe Database la quale mi permette di connettermi con il db, poi ho creato una classe User che mi permette di fare il login e altre belle cose.
Il problema sussiste quando nel costruttore della classe User creo un nuovo oggetto Database, e gli assegno alla variabile di classe $conn la connessione appena avvenuta con il db.
Il problema e che non assegna nulla alla variabile nel costruttore e non capisco come mai, sono sicuro che la classe Database funzione perchè l'ho provata singolarmente.
Vi posto qui sotto i codici delle classi
il pg_prepare e pg_execute, mi da errore sul parametro uno e mi dice che la variabile è null
Qualche aiuto please??
Ho cretato una classe Database la quale mi permette di connettermi con il db, poi ho creato una classe User che mi permette di fare il login e altre belle cose.
Il problema sussiste quando nel costruttore della classe User creo un nuovo oggetto Database, e gli assegno alla variabile di classe $conn la connessione appena avvenuta con il db.
Il problema e che non assegna nulla alla variabile nel costruttore e non capisco come mai, sono sicuro che la classe Database funzione perchè l'ho provata singolarmente.
Vi posto qui sotto i codici delle classi
PHP:
class Database
{
public $conn;
public function db_connect(){
$this->conn = null;
try {
$connection = "host=".myhost." dbname=".mydb." user=".myuser." password=".mypsw;
$this->conn = pg_connect ($connection);
$stmt = pg_prepare($this->conn,"search_path",'SET search_path TO chatbd;');
$stmt = pg_execute($this->conn,"search_path",array());
return $this->conn;
} catch (Exception $e) {
echo "Connection error: ".$e->getMessage();
}
}
}
class User
{
private $conn;
public function __costruct()
{
$db = new Database();
$this->conn = $db->db_connect();
}
//metodo fittizio per testare la connessione
public function run(){
$return = pg_prepare($this->conn,"query_register",'SELECT * FROM tbl_user');
$return = pg_execute($this->conn,"query_register",array());
}
}
il pg_prepare e pg_execute, mi da errore sul parametro uno e mi dice che la variabile è null
Qualche aiuto please??