Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Chiarimento sull'inserimento dei dati nel db nella programmazione ad oggetti

    Ciao ragazzi,
    ho bisogno di un chiarimento relativo alla programmazione ad oggetti.

    Ho creato una classe rubrica per esercizio:


    Codice PHP:
    class Rubrica{

      public 
    $nome;
      public 
    $cognome;
      public 
    $email = array();
      public 
    $telefono_fisso = array();
      public 
    $telefono_cellulare = array();
      public 
    $fax = array();
      public 
    $note;
      
      function 
    __construct($nome$cognome$note){
        
    $this->nome $nome;
        
    $this->cognome $cognome;
        
    $this->note $note;
      }
      
      
    /*
      qui ci stanno i metodi accessori che vi risparmio
      */

      
    function addEmail($email){
        
    $this->email[] = $email;
      }

      function 
    addTelefonoFisso($telefono_fisso){
        
    $this->telefono_fisso[] = $telefono_fisso;
      }

      function 
    addTelefonoCellulare($telefono_cellulare){
        
    $this->telefono_cellulare[] = $telefono_cellulare;
      }

      function 
    addFax($fax){
        
    $this->fax[] = $fax;
      }



    Mi pare di avere capito che quando si crea una classe, questa deve essere altamente specializzata. Per questo ho qualche dubbio relativamente a chi si occupa dell'inserimento di questi dati nel database. Immagino che ci sia una classe db che incapsulata dentro Rubrica mi faccia fare le operazioni che mi servono.

    Il dubbio è: devo creare dei metodi appositi per l'inserimento nel db oppure il codice dell'inserimento nel db va incluso dentro i metodi già sviluppati?

    Sono sicuro che lavostra esperienza mi sarà di aiuto.

    Grazie mille
    Disegnatori e romanzieri d'Italia, visitate il mio sito, cerchiamo favolieri dark ed illustratori dark fantasy... http://www.neilgaimania.it

  2. #2
    Non ho capito se questa classe è una rubrica o una voce di una rubrica...

    In teoria comunque è il "modello" per la tua rubrica, che è il primo livello di astrazione. Dovrebbe permettere di compiere operazioni sui tuoi oggetti (rubriche, utenti eccetera) senza dover scrivere sql. Potresti mettere le query direttamente incapsulate qui, ma di solito si usa un oggetto di appoggio che viene chiamato active record, ovvero un record che abbia anche i metodi di inserimento, modifica, cancellazione eccetera. Estendendo la classe dell'active record con la tua dovresti cavartela. Google is your friend.

  3. #3
    Conctto interessante anche se non mi è chiarissimo come fare... posteresti un esempio?

    Grazie!
    Disegnatori e romanzieri d'Italia, visitate il mio sito, cerchiamo favolieri dark ed illustratori dark fantasy... http://www.neilgaimania.it

  4. #4
    Ok, mi sono documentato un po' su Active record...

    mi sembra di capire che le tabelle devono essere uguali per struttura alle classi. Quindi non si possono normalizzare più di tanto i dati, o sbaglio?

    Aspetto consigli!
    Disegnatori e romanzieri d'Italia, visitate il mio sito, cerchiamo favolieri dark ed illustratori dark fantasy... http://www.neilgaimania.it

  5. #5
    Se normalizzare è inteso nel significato relazionale, per esempio questo forum ha due tabelle per i post e per le discussioni, e quindi due classi Post e Topic. Nella classe post ci sarà un campo id_topic che serve per l'associazione e che rispecchia la tabella. Ciò non toglie che Post possa avere un metodo getTopic() che costruisca l'oggetto Topic relativo.

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.