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

    richiamare funzioni da classe figlia

    Salve

    ho creato prima una classe madre

    Codice PHP:
    //classe madre
    class Upload {

        var 
    $folders null;
        var 
    $dir null;
        ....

           
    //costruttore
           
    function Upload$folders$dir ....){
               ....
           }
           
    //funzione
           
    function checkSize($option){
              
    //fai qualcosa
               
    ....
        }
          ....

    Codice PHP:
    //classe figlia
    class UploadIMG extends Upload {

        var 
    $alb_imgwidth null;
        var 
    $alb_imgquality null;
            .....

          
    //costruttore
        
    function UploadIMG$folders$dir$alb_imgwidth$alb_imgquality,  .......){         
                
    $this->alb_imgwidth $alb_imgwidth;
                  
    $this->alb_imgquality $alb_imgquality;
                ....
                
    //richiamo classe madre per istanziare le proprietà ereditate 
                
    parent::Upload(    $folders,$dir....);
           }    
          
           function 
    pinco (){
               
    $this->checkSize();
               ....
           }
           ....


    non riesco a vedere in nessun modo le funzioni ereditate.
    Con gli attributi tutto a posto, riesco a richiamarli tutti, ma le funzioni nn le vedo.
    Dove sbaglio?

  2. #2
    Codice PHP:
    <?php 
    class Upload 

        var 
    $folders null
        var 
    $dir null
         
    //costruttore 
        
    function Upload$folders$dir){ 
             
    $this->folders$folders
            
    $this->dir$dir;    
        } 
        
    //funzione 
           
    function checkSize($option){ 
            echo 
    $this->folders;
            echo 
    $this->dir;
               echo 
    $option;   
        } 
         
    }
    class 
    UploadIMG extends Upload 

        var 
    $alb_imgwidth null
        var 
    $alb_imgquality null
           

          
    //costruttore 
        
    function UploadIMG$folders$dir$alb_imgwidth$alb_imgquality){          
                
    $this->alb_imgwidth $alb_imgwidth
                  
    $this->alb_imgquality $alb_imgquality
                
                
    //richiamo classe madre per istanziare le proprietà ereditate 
                
    parent::Upload($folders,$dir); 
           }     
           
           function 
    pinco ($option){ 
               
    $this->checkSize($option); 
              
           } 
    }
    $o= new UploadIMG('uno','due','','');  
    $o->pinco('tre');
    ?>
    Non vedo niente di sbagliato.


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  3. #3
    .... e nn lo trovo neanche io l'errore, però sta di fatto che nn riesco ad avere il risultato delle funzioni che la classe figlia eredita dalla madre.

    Non credo che sia un errore nel percorso di require_once della classe madre perchè altrimenti nn avrei visto neanche le proprietà.... ui nn riesco a spiegarmelo

  4. #4
    pensavo

    è possibile che sia un problema dato dalla versione di php che uso sullo spazio?
    Questo modo di costruire le classi è di php4 .. (giusto?) mentre sullo spazio e 5
    E' possibile che sia un errore dovuto ad incompatibilità di versioni?

  5. #5
    Originariamente inviato da recensito
    pensavo

    è possibile che sia un problema dato dalla versione di php che uso sullo spazio?
    Questo modo di costruire le classi è di php4 .. (giusto?) mentre sullo spazio e 5
    E' possibile che sia un errore dovuto ad incompatibilità di versioni?
    si è php4 ma funziona anche su php5 quindi .......
    lo sbaglio è da un altra parte l'unica cosa che mi viene
    in mente (il costruttore lo hai chiamato) è che tu
    abbia fatto un override di qc metodo della classe
    madre ...


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  6. #6
    si l'ho fatto, anzi ho fatto un overloading, ha tenuto giusto il nome e gli elementi passati,l'interno è cambiato.
    Mhhh sto leggendo le miniguida che ho qui per php4, vediamo dove posso aver sbagliato.
    Il brutto è che ho una pagina bianca, nn mi rende nessun risultato ne errore

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.