Call from a singleton class to a function which in turn calls that class's method

Posted by dare2be on Stack Overflow See other posts from Stack Overflow or by dare2be
Published on 2010-05-12T14:16:36Z Indexed on 2010/05/12 15:54 UTC
Read the original article Hit count: 142

Filed under:
|
|

Hello,

I am still looking for a way to phrase it properly (I'm not a native speaker...).

So I have this class SQL which implements the singleton pattern (for obvious reasons) and I also have this function, checkUsr(), which queries the database using one of SQL's methods.

Everything works fine as long as I don't call checkUsr() from within the SQL class. When I do so, the scripts just exits and a blank page is displayed - no errors are returned, no exception is thrown... What's happening? And how do I work around this problem?

EDIT:

class SQL
{
  public static function singleton()
  {
    static $instance;
    if(!isset($instance))
      $instance = new SQL;
    return $instance;
  }

  public function tryLoginAuthor( $login, $sha1 )
  {
    (...)
  }
}

function checkUsr()
{
    if (!isset($_SESSION['login']) || !isset($_SESSION['sha1']))
        throw new Exception('Not logged in', 1);
    $SQL = SQL::singleton();
    $res = $SQL->tryLoginAuthor($_SESSION['login'], $_SESSION['sha1']);
    if (!isset($res[0]))
      throw new Exception('Not logged in', 1);
}

© Stack Overflow or respective owner

Related posts about php

Related posts about php5