Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Sessioni con oggetti

  1. #1

    Sessioni con oggetti

    Vorrei creare un oggetto... per esempio "persona", le sue variabili sono nome e cognome. Come posso renderlo "visibile" in tutte le pagine. Cioè nella pagina index.php creo l'oggetto e le sue istanze e poi nella pagina b.php vorrei invocare il metodo getNome();

    vi posto il mio codice:

    /////////////////////////
    //IL FILE PERSONA.PHP
    /////////////////////////
    <?
    class Persona{

    var $nome;
    var $cognome;


    function addNome($nome){
    $this->nome = $nome;

    }

    function addCognome($cognome){
    $this->cognome = $cognome;
    }

    function getNome(){
    return $this->nome;
    }

    function getCognome(){
    return $this->cognome;
    }




    }
    ?>

    //////////////////////
    // IL FILE INDEX.PHP
    //////////////////////
    <?
    session_register('s');
    include('persona.php');

    $s = new Persona();

    if(isset($nome)){
    $s->addNome($nome);
    }

    $s->addCognome("Navarro");

    echo "NOME: " . $s->getNome() . " ";
    echo $s->getCognome();


    ?>

    page2


    /////////////////////
    // IL FILE B.PHP
    /////////////////////

    <?
    session_start();
    include('persona.php');

    echo "----->" . $s->getCognome();

    ?>

    ma mi da il seguente errore:
    Fatal error: Unknown(): The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition spedizione of the object you are trying to operate on was loaded _before_ the session was started in d:\penedamore.com\penedamore.com\TMP\page2.php on line 5


    avete qualche soluzione?
    grazie

  2. #2
    Non usare lo short open tag, utilizza il tag di apertura completo.

    Non utilizzare session_register, utilizza l'array $_SESSION.

    Il messaggio di errore è piuttosto chiaro. Fa si che la definizione della classe avvenga prima di richiamare session_start().

  3. #3
    Scusami manon ho capito potresti fare degli esempi... ho provato ad usare $_SESSION[] ma non funziona.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.