Visualizzazione dei risultati da 1 a 2 su 2

Discussione: problema oggetto

  1. #1
    Utente di HTML.it L'avatar di cendo
    Registrato dal
    Aug 2007
    Messaggi
    49

    problema oggetto

    sto cercando di creare una classe personalizzata per la gestione della connessione al mio db.
    Ho una discreta base di programmazione ad oggetti in java, ma non ho alcuna esperienza con php.
    Il mio codice base è questo:


    Codice PHP:
    <?php
        
    class DBConnection
        
    {                
            private 
    $DBName;
            private 
    $ServerIP;
            private 
    $ServerPort;
            private 
    $UserName;
            private 
    $UserPassword;
            
            private 
    $DataBase;
            
            public function 
    __construct()
            {
                
    $DBName="test";
                
    $ServerIP="localhost";
                
    $ServerPort=8889;
                
    $UserName="root";
                
    $UserPassword="root";        
            }
           
            public function 
    connect()
            {
                
    $DataBase = new mysqli($ServerIP$UserName$UserPassword$DBName,$ServerPort);
            }
            
            public function 
    disconnect()
            {
                
    $DataBase->close();
            }
        }
    ?>
    Richiamo nella pagina che utilizzerò questo codice:
    Codice PHP:
    <?php
            
    include("DBConnection.php");
               
    $db=new DBConnection();
               
    $db->connect();
               
    $db->disconnect();
    ?>
    l'errore è:

    PHP Fatal error: Call to a member function close() on a non-object
    l'errore si riferisce alla riga "$DataBase->close();" perchè non riconosce la variabile come oggetto.
    L'oggetto è stato creato nella funzione "connect()", ma evidentemente non se ne accorge.
    Come risolvo?
    Più che altro vorrei capire come si comporta php in queste situazioni.

    Grazie

  2. #2
    Utente di HTML.it L'avatar di cendo
    Registrato dal
    Aug 2007
    Messaggi
    49
    provo a rispondermi da solo, ditemi se sbaglio.

    Quando richiamo una variabile devo usare la sinstassi "$this->nomeVariabile"

    Giusto?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.