Salve,
premetto che sto appena cominciando a studiare la Oop, proprio da questo sito, che la spiega in modo molto più chiaro di quanto ho letto in altri manuali.
Il risultato di quel che ho combinato, non mi segnala errori sintattici ma lo stesso non avviene nessuna connessione.
Questa è la versione procedurale e funzionante:
Codice PHP:
<?php
$db_host="localhost";
$db_user="root";
$db_pass="";
$db_name="login";
$conn=mysql_connect($db_host, $db_user, $db_pass);
if(!$conn)
{
die("Errore di connessione");
}
$sel=mysql_select_db($db_name, $conn);
if(!$sel)
{
die("Errore di connessione del database");
}
?>
Questo invece è il mio maldestro tentativo di versione Oop:
Codice PHP:
<?php
class blog{
private $db_host;
private $db_user;
private $db_pass;
private $db_name;
protected $conn;
protected $sel;
public function __construct(){
$this->db_host='localhost';
$this->db_user='root';
$this->db_pass='';
$this->db_name='login';
}
public function conn(){
$this->db_host;
$this->db_user;
$this->db_pass;
}
}class conn extends blog{
public function connected(){
$this->conn = mysql_connect($this->conn());
}
public function Errore_connessione(){
if(!$this->conn){
die('Errore di connessione');
}
}
}class sel extends conn{
public function sel(){
return $this->db_name;
return $this->conn;
}
public function selected(){
$this->sel = mysql_select_db(sel());
}
public function Errore_selezione(){
if(!$this->sel){
die('Errore di connessione del database');
}
}
}
$conn = new conn();
$conn->connected();
$Errore_connessione = new conn();
$Errore_connessione->Errore_connessione();
$Errore_selezione = new sel();
$Errore_selezione->Errore_selezione();
?>
Mi compare la scritta "Errore di connessione". Ovvero (!$this->conn) risulta "TRUE". Potete spiegarmi che errore sto facendo? grazie.