Ciao a tutti, volevo chiedere un consulto
Io ho creato questa classe per gestire un decimo le connessioni a un database, dato che dovrò inserire e richiedere dati da differenti pagine:
io volevo tipo richiamare il metodo Connetti_Database in questo modoCodice PHP:<?php class Classe_MySQL { // Proprietà per la connessione al database private $Nome_Host = "localhost"; private $Nome_User = "nome"; private $Password = 'password'; private $Nome_DataBase = 'database'; //Proprietà per il controllo sulle connessioni attive [0 = NONATTIVA][1 = ATTIVA] public $Stato_Connessione = FALSE; //Valore iniziale FALSE //Metodo per la connessione a database MySQL public function Connetti_DataBase() { if(!$this->Stato_Connessione) { //Provo a connettermi a MySQL if($Connessione = mysql_connect($this->Nome_Host, $this->Nome_User, $this->Password) or die (mysql_error())) { //Se la connessione è andata a buon fine seleziono il database $Selezione = mysql_select_db($this->Nome_DataBase, $Connessione) or die (mysql_error()); //Setto che lo stato della connessione è attivo $this->Stato_Connessione = TRUE; } else return FALSE; } else return TRUE; } //Metodo per la disconnessione da database MySQL public function Disconnetti_DataBase() { if($this->Stato_Connessione) if(mysql_close()) $this->Stato_Connessione = FALSE; else return FALSE; else return TRUE; } //Metodo per l'esecuzione di una query public function Query($SQL) { //Se è attiva una connessione if(isset($this->Stato_Connessione)) { //Eseguo la query contenuta nella variabile $SQL $SQL = mysql_query($SQL) or die (mysql_error()); //Restituisco il risultato della query return $SQL; } //Altrimenti ritorno un valore falso else return FALSE; } //Metodo per il conteggio dei risultati di una query public function Conta_Risultato($Risultato) { if($this->Stato_Connessione) return mysql_num_rows($Risultato); else return FALSE; } //Metodo per l'escape di una stringa da passare a una query public function Escape_MySQL($Stringa) { if($this->Stato_Connessione) return mysql_real_escape_string($Stringa); else return FALSE; } //Metodo per liberare il risultato di una query public function Libera_Risultato($Risultato) { if($this->Stato_Connessione) return mysql_free_result($Risultato); else return FALSE; } } ?>
nella pagina creo l'istanza dell'oggetto
require_once '../Codici/MySQL_Class.php';
$MySQL = new Classe_MySQL;
poi nel metodo costruttore, o comunque all'occorenza in una classe voglio connettermi,
ho provato così ma non funziona
MySQL::Connetti_DataBase(); e toericamente(ammetto che non me ne intendo troppo) se il metodo è dichiarato come pubblico dovrebbe funzionare
allora in alternativa ho usato $MySQL->Connetti_DataBase e funziona.
Dato che mi hanno chiesto di fare un sito vorrei saper se il codice che ho scritto è sicuro, naturalmente è un po scopiazzato da una guida di questo sito, accetto qualunque suggerimento![]()
![]()
![]()

Rispondi quotando