Visualizzazione dei risultati da 1 a 6 su 6

Discussione: classi e metodi

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379

    classi e metodi

    salve a tutti, ho esperimentato un po' ma non sono giusto ad unsa soluzione plausibile; quindi vorrei chiederlo a voi.

    allora, io ho creato una classe che mi gestisce la connessione al database e le querry che faccio. Tuttavia ho creato una seconda classe che gestisce il login e quindi deve fare una query!

    a questo punto mi chiedo se devo usare questa tipologia: casse login extends mysql, richiamando semplicemente la funzione della query !!

    in questo caso dovrei inizializzare la classe login [$aut = new login("nome","pasword");]

    ma non so se cosi facendo mi si stabilisce anche la connessione al db automaticamente!

    Codice PHP:
    class mysql {
     var 
    $_host;
     var 
    $_user;
     var 
    $_password;
     var 
    $_database;
     var 
    $_error;

        function 
    __construct($error){
          
    $this->_host         "localhost";
          
    $this->_user         "root";
          
    $this->_password     "******";
          
    $this->_database     "new_narsil";
          
    $this->_error     $error
          
    $this->db_open();
        }
        function 
    db_open(){
          
    $db mysql_connect($this->_host,$this->_user,$this->_password)or die($this->_error);
                  
    mysql_select_db($this->_database);
        }
        function 
    db_close(){
          
    mysql_close();
        }
        function 
    query($sql=""){
          
    $result mysql_query($sql);
          
    $riga      mysql_fetch_object($result);
                      
    mysql_free_result($result);
         return(
    $riga);    
        }

    grazie in anticipo delle risposte!

  2. #2
    a questo punto mi chiedo se devo usare questa tipologia: casse login extends mysql, richiamando semplicemente la funzione della query
    Nel tuo caso e' preferibile l'incapsulazione, non l'ereditarieta'. In modo da poter "condividere" lo stesso oggetto connessione con altri oggetti.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    dell'incapsulazione ho letto, ma la guida la trattava solo di passaggio... potresti spiegarmi meglio tu, o reindirizzarmi ad una guida?

  4. #4
    potresti spiegarmi meglio tu, o reindirizzarmi ad una guida?
    Basta che cerchi con google, si trova molto materiale.

    Codice PHP:
    <?php 

    class mysql {
        
    // ...
    }

    class 
    login {

        var 
    $db;

        function 
    __construct(&$db) {
            
    $this->db =& $db;
        }
        
        function 
    execute_login($username$password) {
            
    $this->db->query("SELECT ...");
            
    // ...
        
    }
        
    }

    $mysql = new mysql();
    $mysql->db_open();

    // ...

    $login = new login($mysql);
    $login->execute_login('username''password');

    ?>

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    innanzitutto, grazie della risp. se cmq posso fare una domanda alquanto stupida... per cosa sta la e commerciale (&) prima della variabile $db?

  6. #6

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.