- Home
- Categorie
- Coding e Sistemistica
- PHP
- oggetti in pagine diverse?
-
Se non inserisci mysql_close() la connessione, per motivi di sicurezza, viene terminata poco dopo l'elaborazione, mentre se lo inserisci viene chiusa all'atto dell'interpretazione della funzione.
Comunque, una volta generato l'intero codice html, l'esecuzione è terminata, così come viene interrotta la connessione con il server web, che a sua volta interrompe la connessione con il server sql.
-
ok grazie mille!
-
Prego!
-
ah un'altra domanda! se ho```
<?php//istanzio la classe db che col costruttore effettua la connessione
$db= new db();
//query varie poi NON faccio la chiusura di connessione//istanzio la classe user,per funzioni sue effettua anch'essa una connessione ma non con la classe db (supponiamo)
$user=new $user();
$user->metodo();
?>come agisce in questi casi il server?
-
Al termine dell'esecuzione dello script, tutte le connessioni vengono chiuse automaticamente.
-
però lascio una connessione aperta e, all'interno dello stesso script, rientro creando una nuova connessione... no crea qualche tipo di conflitto?
-
...e un errore mi è capitato che non capisco...
PAGINE:- pippo.php (pagina che carico),
- db.php (contiene la classe per il database),
- squadra.php(contiene la classe per gestire la squadra dell'utente);
pippo.php contiene un "include(db.php);" in quanto ho bisogno di usare l'oggetto e anche squadra.php ha un include uguale perchè alcune funzioni accedono al db: purtroppo mi da errore in db.php dicendo che non posso replicare l'oggetto. Ho provato a togliere tutti i riferimenti all'oggetto ma basta l'include a causare l'errore...:?
-
Usa include_once al posto di include, così non fa di nuovo l'include se lo ha già fatto.
-
@owen said:però lascio una connessione aperta e, all'interno dello stesso script, rientro creando una nuova connessione... no crea qualche tipo di conflitto?
e questo esempio si può fare senza causare dei problemi?
-
Io a seconda dei casi cerco di strutturarmi gli script in modo tale da effettuare la connessione una volta sola, oppure aprire e chiudere nello stesso contesto ogni connessione.
Comunque in teoria non dovrebbe creare conflitti.E' come se io e te accedessimo allo stesso database, nello stesso momento, utilizzando lo stesso user: mysql lo permette.
Certo che se riesci a strutturare lo script per connetterti una volta sola è meglio e velocizzi anche il tutto...