Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di tapu
    Registrato dal
    May 2008
    Messaggi
    885

    valorizzato attributo 'messaggio' statico nell'oggetto ma non lo visualizza

    ciao a tutti...

    Sto cominciando ad utilizzare il concetto OOP in php è mi trovo in qualche difficoltà concettuale.

    Possido 3 pagine :
    1- html puro con qualche 'tag php' per segnalare gli eventuali errori nella registrazione dei dati
    2-la pagina che istanzia la classe e che reinderizza nelle varie pagine ed inserisce i dati nel db se corretti
    3- La classe che effettua i controlli e che crea le variabili di errore...

    Il problema sussiste nel perchè non riesco a trasportare alcune variabili dalla pagina (punto 2) alla pagina HTML dove dovrebbero comparire gli errori .
    Vi posto la classe:

    Codice PHP:
    class objazienda {

       private  
    $denominazione ""//attributo
       
    private static $erroreDenomina ""//attributo statico

       
    public function  objazienda ($n_deno){ //Costruttore
            
    $this->denominazione $n_deno;
      }
    //funzione di controllo campo
     
    public function controldenominazione (){
            if (empty(
    $this->denominazione)){
               
    self::$erroreDenomina self::vuotodeno();
               return 
    false;
               
    // return (self::GetErroreDenominazione(self::vuotodeno()));
            
    }else if (!empty ($this->denominazione)){
                
    $espressione ereg("^[A-Za-z0-9\.\ ]+$"$this->denominazione);
                if (
    $espressione){
                    return 
    true;
                }else{
                    
    self::$erroreDenomina self::erroredeno();
                    return 
    false;
                    
    //return (self::GetErroreDenominazione(self::erroredeno()));
                
    }
            }
        }

    //funzioni che mi creano le stringhe da mostrare
    public static function vuotodeno (){
            
    $vuoto "Il campo denominazione deve essere riempito";
            return 
    $vuoto;
        }
        public static function 
    erroredeno (){
            
    $errore "Il campo denominazione &egrave stato compilato non correttamente";
            return 
    $errore;
        }
    //metodo statico che dovrei richiamare nella pagina HTML se i campi sono stati inseriti "male"
    public static function GetErroreDenominazione(){
            return 
    self::$erroreDenomina;
        }

    Ora vi mostr la pagina dove viene istanziata la classe e vengono effettuati i reindirizzamenti
    Codice PHP:
    <?php
    session_start
    ();
    /*CARICAMENTO OGGETTI*/
    include ("../../config/connesso.php");
    $connetto = new connesso();
    include (
    "../../DTO/objazienda.php");
    /*RECUPERO VARIABILI*/
    $denominazione $_POST['denominazione'];
    $azienda = new objazienda($denominazione$indirizzo$citta$occupazione$contratto$inizioLavoro);
    if (!
    $azienda->controldenominazione()){
    //var_dump (objazienda::GetErroreDenominazione());
    header ("Location:../../index.php?pag=ins_azi");
    }
    Nella classe qui sopra ho commentato un var dump che mi fa visualizzare la stringa che torna dal metodo in maniera corretta...
    la if appena sopra invoca il metodo di controllo e ritorna true, se non è true reinderizza alla pagina

    ora la pagina html
    Codice PHP:
    <?php
    include ("DTO/objazienda.php");
    ?>

    <form action="pagine/model/azienda_model.php" method="post" name="moduloInvio">
        <table>
            <thead>
                <tr>
                    <th colspan="3">
                        Inserimento Dati
                    </th>
                </tr>
            </thead>
            <tbody>

                <?php var_dump(objazienda::GetErroreDenominazione()); ?>
                <tr>
                    <td>
                        Denominazione
                    </td>
                    <td>
                        <input type="text" name="denominazione" value="" />
                    </td>
    Li tra le tag php ho inserito lo stesso var_dump che abbiamo visto precedentemente , ma ritorna sempre vuoto!

    Ora ,Spero di non incasinarmi, per evitare di usare mille sessioni che non mi servono a tanto pensavo di utilizzare l'oggetto per incapsulare i miei avvisi e mostrarli all'utente se e quando ce ne fosse stato bisogno.
    Quello che non caapisco è il perchè mi fà visualizzare il messaggio nella pagina precedente e non in quella HTML dopo il reindirizzamento.
    Qualche consiglio a proposito?

    Vi ringrazio ... buona serata

  2. #2

  3. #3
    Utente di HTML.it L'avatar di tapu
    Registrato dal
    May 2008
    Messaggi
    885
    ok... ma non rischio di avere troppa roba nelle sessioni?
    e poise faccio unset(mia_sessione) basta per distruggere il singolo elemento nella sessione?

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.