Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Problemi con le classi

  1. #1

    Problemi con le classi

    Ciao a tutta la comunity vi scrivo per alcune delucidazioni legate ad un errore che mi sta creando qualche problemino:

    "Fatal error: Call to a member function echo_comments() on a non-object in /precorso/"

    Questo messaggio si verifica nel momento in cui vado ad eseguire il metodo pubblico echo_comments() di una istanza di classe che ho creato io.

    Se chiamo la funzione dal file index.php dopo aver istanziato la classe in questione, non c'è problema, ma se lo faccio da un metodo di un altro oggetto mi crasha dandomi il suddetto errore.

    Sapete darmi qualche spiegazione valida?

  2. #2
    Dovresti postare i frammenti di codice interessati altrimenti come facciamo a dirti dove sbagli?
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  3. #3
    Questa è la classe singleton che è salvata nel file comment.php il quale è incluso nell'index.php. Una volta istanziata la classe e richiamando un metodo questo funziona correttamente. Se invece il metodo della classe di cui sopra lo richiamo dal metodo di un'istanza di un'altra classe mi appare l'errore del post in oggetto.

    <?php
    if (stristr(htmlentities($_SERVER['PHP_SELF']), "comment.php"))
    {
    Header("Location: index.php");
    die();
    }

    class comment
    {
    private static $istance = null;
    private $comments_on_off;

    private function __construct($configurazione)
    {
    include($configurazione);
    $this->comments_on_off = $comments_on_off;
    }

    public static function get_istance()
    {
    if (self::$istance == null)
    {
    $myclass = __CLASS__;
    self::$istance = new $myclass($configurazione);
    }
    return self::$istance;
    }

    public function echo_comments($comment)
    {
    If ($this->comments_on_off == true)
    {
    echo ($comment);
    }
    }
    }
    ?>

    Non riesco ancora a capire se il problema è la classe stessa oppure non sto tenendo conto di una qualche regola legata al php a me sconosciuta...

    Attendo con impazienza qualcuno che possa ragguagliarmi in merito.

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.