Salve, ho un problemino con due classi...
La prima classe Magazzino ha due attributi:
Codice PHP:
public $capienza;
public $indirizzo;
e quattro metodi che sarebbero i classici get e set per i due attributi.
Poi ho provato a fare una seconda classe "vettMagazzino" in cui, per ora, ho un vettore di oggetti di tipo Magazzino.
Questa classe e il relativo costruttore li ho fatti così:
Codice PHP:
class vettMagazzino {
public $magazzini = array();
public function __construct() {
$ogg_query= new DoQuery();
$query= "select * from Magazzini";
$risultato=mysql_query($query, mysql_connect("localhost","root","") );
while ($row = mysql_fetch_array($risultato, MYSQL_NUM)) {
$magazzini[]= new Magazzino($row[1]); }
}
Fin qui sembra tutto ok.
L'ultima riga richiama il costruttore di Magazzino che in base al secondo elemento preso dalla query riempe i campi capienza e indirizzo.
Ora vorrei implementare un metodo nella classe vettMagazzino che mostri un attributo del magazzino. Ho provato a fare così:
Codice PHP:
public function showMagazzino() {
$i=0;
while ($i<2) {
print "<tr>";
print " <td> ".$this->magazzini[$i]->getCapienza() ."</td>";
print "</tr>";
e mi da questo errore:
codice:
Fatal error: Call to a member function getCapienza() on a non-object in C:\... on line 26
Perchè i magazzini presenti nell'array non sono visti come oggetti?
Grazie!