Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Classi, Impostare Valore Classe esterna

    Ciao ragazzi,, sto creando varie classi..
    Una che verifica se il formato Email è corretto, una se il formato Password e corretto, e una se l' immagine in Upload è corretta..

    Un totale di 3 classi, che dovrebbero interaggire con un unica classe Class Errori il quale scopo e solo di contenere una variabile che verra richiamata dopo per vedere se una di quelle classi ha generato errori..

    ma non riesco a far fare questo.. ho provato anche ad estendere le classi ma non riesco..

    io richiamo le 3 classi e le relative funzioni,, e alla fine faccio un echo della variabile dentro la Classe Errori.. ma non stampa nulla, ( pur generando errori)

    come risolvo??

    grazie mille

  2. #2

    Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da BOES
    ...
    come risolvo??
    Magari postando il codice!
    E comunque l'approccio è errato, non ha alcun senso scrivere una classe per ciascun tipo di controllo, semmai un metodo.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3

    Re: Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da satifal
    Magari postando il codice!
    E comunque l'approccio è errato, non ha alcun senso scrivere una classe per ciascun tipo di controllo, semmai un metodo.
    questo e un esempio semplice di come vorrei che funzionasse..

    codice:
    class Errori{
    	public $errori;
    	
    	public function stampaerr(){
    		echo $this->errori;		
    	}
    	
    }
    
    
    class Classez extends Errori{
    	
    	public function boes(){
    	$this->errori = 'ERRORE !';
    	}
    }
    
    
    $caaa = new Classez();
    $caaa->boes();
    
    $caa = new Errori();
    $caa->stampaerr();

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453

    Re: Re: Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da BOES
    questo e un esempio semplice di come vorrei che funzionasse..

    codice:
    class Errori{
    	public $errori;
    	
    	public function stampaerr(){
    		echo $this->errori;		
    	}
    	
    }
    
    
    class Classez extends Errori{
    	
    	public function boes(){
    	$this->errori = 'ERRORE !';
    	}
    }
    
    
    $caaa = new Classez();
    $caaa->boes();
    
    $caa = new Errori();
    $caa->stampaerr();
    Codice PHP:
    class Errori{
        public 
    $errori;
        
        public function 
    stampaerr(){
            echo 
    $this->errori;        
        }
        
    }


    class 
    Classez extends Errori{
        
        public function 
    boes(){
        
    $this->errori 'ERRORE !';
        }
    }


    $caaa = new Classez();
    $caaa->boes();
    $caaa->stampaerr(); 
    Semmai cosi, ti ricordo che la classe estesa ha un'istanza della classe errori
    quindi se tu ridichiari una nuova istanza è ovvio che $errori sia vuota

    Edit

    Comunque ti propongo anche una soluzione, fai la classe errori astratta, estendila
    ad ogni classe di cui necessiti e nel destruct della classe errori richiama o stampa gli errori

  5. #5

    Re: Re: Re: Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da RoTeam
    Codice PHP:
    class Errori{
        public 
    $errori;
        
        public function 
    stampaerr(){
            echo 
    $this->errori;        
        }
        
    }


    class 
    Classez extends Errori{
        
        public function 
    boes(){
        
    $this->errori 'ERRORE !';
        }
    }


    $caaa = new Classez();
    $caaa->boes();
    $caaa->stampaerr(); 
    Semmai cosi, ti ricordo che la classe estesa ha un'istanza della classe errori
    quindi se tu ridichiari una nuova istanza è ovvio che $errori sia vuota

    Edit

    Comunque ti propongo anche una soluzione, fai la classe errori astratta, estendila
    ad ogni classe di cui necessiti e nel destruct della classe errori richiama o stampa gli errori

    !Grazie Mille... risolutivo

  6. #6

    Re: Re: Re: Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da RoTeam
    Codice PHP:
    class Errori{
        public 
    $errori;
        
        public function 
    stampaerr(){
            echo 
    $this->errori;        
        }
        
    }


    class 
    Classez extends Errori{
        
        public function 
    boes(){
        
    $this->errori 'ERRORE !';
        }
    }


    $caaa = new Classez();
    $caaa->boes();
    $caaa->stampaerr(); 
    Semmai cosi, ti ricordo che la classe estesa ha un'istanza della classe errori
    quindi se tu ridichiari una nuova istanza è ovvio che $errori sia vuota

    Edit

    Comunque ti propongo anche una soluzione, fai la classe errori astratta, estendila
    ad ogni classe di cui necessiti e nel destruct della classe errori richiama o stampa gli errori

    scusa una cosa.. ma se ci fossero piu Classi che ereditano la classe Errori? ogni oggetto creato, richiamando poi la funzione stampaerr() stamperebbe solo l errore del singolo oggetto??

    e per stamparli tutti?

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453

    Re: Re: Re: Re: Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da BOES
    scusa una cosa.. ma se ci fossero piu Classi che ereditano la classe Errori? ogni oggetto creato, richiamando poi la funzione stampaerr() stamperebbe solo l errore del singolo oggetto??

    e per stamparli tutti?
    Ogni volta che la classe viene estesa si genera una nuova istanza alla fine dell'esecuzione nel destruct della classe astratta errori avviene l'echo degli errori

  8. #8

    Re: Re: Re: Re: Re: Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da RoTeam
    Ogni volta che la classe viene estesa si genera una nuova istanza alla fine dell'esecuzione nel destruct della classe astratta errori avviene l'echo degli errori
    potresti farmi un esempio..

    perfavoreee

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453

    Re: Re: Re: Re: Re: Re: Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da BOES
    potresti farmi un esempio..

    perfavoreee
    Una cosa del genere ad esempio
    Codice PHP:
    abstract class Errori
        public 
    $errori = array(); 
         
        public function 
    stampaerr(){
            foreach(
    $this->errori as $errore) echo $errore.'
    '
    ;         
        } 
        
        public function 
    __destruct(){ $this->stampaerr();  }
         



    class 
    Classez extends Errori
         
        public function 
    boes(){ 
        
    $this->errori[] = 'ERRORE 1'
        
    $this->errori[] = 'ERRORE 2'
        } 


    class 
    Classex extends Errori
         
        public function 
    voes(){ 
        
    $this->errori[] = 'ERRORE 3'
        
    $this->errori[] = 'ERRORE 4'
        } 


    $a = new Classez();
    $b = new Classex();
    $a->boes();
    $b->voes(); 
    Ovviamente gli errori inizieranno dall'ultima classe fino alla prima, oppure
    potresti usare delle funzioni statiche per aggiungere/rimuovere o stampare errori
    cosi da non ridichiarare l'istanza

  10. #10

    Re: Re: Re: Re: Re: Re: Re: Re: Classi, Impostare Valore Classe esterna

    Originariamente inviato da RoTeam
    Una cosa del genere ad esempio
    Codice PHP:
    abstract class Errori
        public 
    $errori = array(); 
         
        public function 
    stampaerr(){
            foreach(
    $this->errori as $errore) echo $errore.'
    '
    ;         
        } 
        
        public function 
    __destruct(){ $this->stampaerr();  }
         



    class 
    Classez extends Errori
         
        public function 
    boes(){ 
        
    $this->errori[] = 'ERRORE 1'
        
    $this->errori[] = 'ERRORE 2'
        } 


    class 
    Classex extends Errori
         
        public function 
    voes(){ 
        
    $this->errori[] = 'ERRORE 3'
        
    $this->errori[] = 'ERRORE 4'
        } 


    $a = new Classez();
    $b = new Classex();
    $a->boes();
    $b->voes(); 
    Ovviamente gli errori inizieranno dall'ultima classe fino alla prima, oppure
    potresti usare delle funzioni statiche per aggiungere/rimuovere o stampare errori
    cosi da non ridichiarare l'istanza

    !ma se io dovessi stampare gli errori direttamente in uno spazio html preciso?? cosi li stmpa in automatico

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.