Ciao a tutti, sto cominciando a programmare ad oggetti, e devo dire che comincio a scorgere i grandi vantaggi legati a questo modo di programmare.
Ho iniziato con un prova creando una classe che estapola dal database determinate informazioni (ora limitato proprio per provare) ma che ci consentirà di togliere le svariate funzioni che utilizzavo prima. Vorrei che guardaste il poco e semplice codice che ho scritto per vedere se è corretta la logica:
Codice PHP:
require_once("classe.chiamata.php");
$oggChiamata = new Chiamata();
$oggChiamata-> db_host = "localhost";
$oggChiamata-> db_user = "username";
$oggChiamata-> db_password = "password";
$oggChiamata-> db_name = "nomedatabase";
$oggChiamata->Connetti();
Classe:
Codice PHP:
<?php
class Chiamata{
public $db_host;
public $db_user;
public $db_password;
public $db_name;
private $db;
private $eseguo;
private $row;
private $query = "SELECT tblATTIVITA.NomeAttivita, tblATTIVITA.DescrizioneAttivita, tblCITTA.NomeCitta FROM tblATTIVITA, tblCITTA WHERE tblATTIVITA.IDCITTA = tblCITTA.IDCITTA AND tblATTIVITA.IDATTIVITA =1";
function Connetti() {
$this->db = mysql_connect($this->db_host, $this->db_user, $this->db_password) or die ("Errore nella connessione al database numero: ".mysql_errno()." Descrizione: ".mysql_error());
mysql_select_db($this->db_name, $this->db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$this->eseguo = mysql_query($this->query,$this->db) or die ("Errore nella query numero: ".mysql_errno()." Descrizione: ".mysql_error());
$this->row = mysql_fetch_array($this->eseguo);
print_r($this->row);
}
}
?>
Ovviamente l'idATTIVITA sarà specificato attraverso variabile...
Ora, supponiamo che io non voglia stampare i dati nella funzione come ora ma restituirli alla pagina, vale la regola del return come nelle funzioni normali? E se invece richiamo dalla pagina 1 i dati come row[0], ecc., succede qualcosa?