ciao a tutti
1. ho qualke problema nell'utilizzo di una classe per la connessione al DB e le query. (ho preso qualke spunto dagli esempi di Advanced PHP Programming)
ottengo un errore durante il parsing del file in corrispondenza di $this->connect() nella funzione execute.Codice PHP:class dbhandler {
var $user, $pass, $dbhost, $dbname, $dbh;
function dbhandler() {
$this->user=$cfg_db_user;
$this->pass=$cfg_db_pass;
$this->dbhost=$cfg_db_host;
$this->dbname=$cfg_db_name;
}
function connect() {
$this->dbh=mysql_pconnect($this->dbhost,$this->user,$this->pass);
...
}
function execute($query) {
if (!$this->dbh) {
$this->connect();
}
$ret=mysql_query($query,$this->dbh);
...
}
}
Precisamente l'errore è 'Call to undefined function: connect()'.
come devo richiamare la funzione?
2. quella stessa funzione, in caso di un SELECT mi crea un'istanza di un altro oggetto:
il quale mi permette di richiamare altre funzioni come num_rows() o fetch_row() - ritornano rispettivamente mysql_num_rows() e mysql_fetch_row().codice:$result=new DB_res($this->dbh,$query); $result->data=$ret; return $result;
Purtroppo, un esempio pratico mi torna un Fatal Error: Call to a member function on a non-object.
Come mai non mi permette di usare il risultato della query come l'oggetto che viene istanziato nella classe?codice:$query=dbhandler::execute($raw); if ($query->num_rows()!=0) { ...
se servisse uso PHP 4.3.4
grazie
![]()

Rispondi quotando

