Buonasera a tutti !!
Vi avverto che da pochissimo sto studiando il php quindi se per le prossime righe ho scritto delle cavolate, vi prego di non lapidarmi a tempo record!
Sto progettando un sito web che faccia uso di PHP5 a classi.
Dato che derivo da anni con Java, ho strutturato le mie classi php proprio come se stessi facendo un progetto java, quindi con il classico costruttore, distruttore, getter/setter, ecc.
Il mio problema è questo:
-------
Cosa voglio fare:
Una volta che ho eseguito la login del sito, devo stampare a video le mie informazioni personali (nome, cognome, telefono, ecc).
Tutte queste informazioni vengono memorizzate in un oggetto che chiamo Utente e valorizzate subito dopo il riconoscimento nel DB.
-------
Cosa succede:
La connessione al database avviene correttamente, ma l'invocazione del metodo della classe Utente, che mi consentirà di valorizzare i campi e stamparne i valori, non viene effettuata.
Vi posto il codice:
Codice PHP:
//prelevo nome utente/pass inseriti
extract($_POST);
//richiedo i file DatabaseDAO (gestione DB) e Utente (per caricarne i dati)
require_once 'DatabaseDAO.php';
require_once 'Utente.php';
//dichiaro l'oggetto database (qui mi fa la connessione che VA A BUON FINE)
$db = new Database;
//qui non va avanti
//pare che non riconosca l'operatore "->" per invocare il metodo della classe Database
if ($db->eseguiLogin($txtUser,$txtPassword)){
autorizzato();
$utente = new Utente;
$id_utente = $db->getValoreFromDB("utenti", "id_utente", "username", $txtUser);
$utente->estraiUtente($id_utente);
carica_info_utente($utente);
}else negato();
Secondo me l'errore è proprio questa riga di codice
Codice PHP:
if ($db->eseguiLogin($txtUser,$txtPassword)){
in quanto non entra nella if e nemmeno nell'else.
Un piccolo appunto, in locale funziona tutto a meraviglia ma su Altervista no.
Ho il timore che non sia perfettamente supportato PHP ad oggetti ma molto probabilmente sto commettendo qualche errore da neofita.
Come posso risolvere?
Attendo risposta, grazie a tutti