Pear Auth() und MDB2

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Pear Auth() und MDB2

    Hallo,

    ich möchte Pear Auth mit MDB2 verwenden, habe die Pakete und den MySQL Driver installiert, bekomme jedoch jedesmal die Meldung:

    PHP Code:
    main(Auth/Container.php): failed to open stream
    und

    PHP Code:
    Fatal errormain(): Failed opening required 'Auth/Container.php' 
    Der Datenbankzugriff mit MDB2 funktioniert bereits, aber bei dem Login kommt immer die o. g. Fehlermeldung.


    Hier ein Ausschnitt aus dem Script...
    PHP Code:
    // PEAR PAKETE
    require_once(DIR_WS_PEAR 'MDB2.php');
    require_once(
    DIR_WS_PEAR 'Auth.php');
    #require_once(DIR_WS_PEAR . 'PEAR.php');

    $dsn = array(
        
    'phptype' => PHPTYPE,
        
    'dbsyntax' => DBSYNTAX,
        
    'username' => USERNAME,
        
    'password' => PASSWORD,
        
    'protocol' => PROTOCOL,
        
    'hostspec' => HOSTSPEC,
        
    'port' => PORT,
        
    'socket' => SOCKET,
        
    'database' => DATABASE
    );

    // $db = DB::connect($dsn);
    $db =& MDB2::singleton($dsn); 

    // $db->setOption('portability',
    //    DB_PORTABILITY_LOWERCASE
    // );

    if(true == PEAR::isError($db)) {
        die(
    $db->getMessage());
    }

    function 
    ErrorReport($result
    {
        if(
    true == PEAR::isError($result)) {
                die(
    $result->getMessage());
        }    
    }

    $db->setFetchMode(MDB2_FETCHMODE_ASSOC); 

    $smarty = new Smarty_OnlineShop();

    // Login
    function login()
    {
        
    $login "
        <form action=\"" 
    $_SERVER['PHP_SELF'] . "\" method=\"post\">
        Login:<br>
        <input type=\"text\" name=\"username\"><br>
        Passwort:<br>
        <input type=\"password\" name=\"password\"><br>
        <input type=\"submit\" value=\"Login\">
        </form>
        "
    ;

        
    $smarty->assign('login'$login);
    }

    $my_auth = new Auth('MDB2'$dsn"login");

    $my_auth->start();

    if(
    true === $my_auth->getAuth()) {
            print 
    "Sie sind drin";

    » http://www.htaccess-generator.com

  • #2
    Cool, das habe ich nun gelöst bekommen... habe den Include-Path gesetzt und jetzt funzt es...

    Habe jetzt aber noch ne kleine Frage...
    --------------------------------------------------
    Ein Parameter für den Aufruf vom Pear-Paket Auth ist ja für die Login Funktion. Ich habe nun das Problem das ich Smarty verwende und die Ausgabe des Formulars an Smarty, also ein externe Template übergeben möchte/ muss.
    Wie kann ich den die Instanz von der Klasse $smarty an die Funktion übergeben, sodass ich da $smarty->assign(etc.... verwenden kann?
    » http://www.htaccess-generator.com

    Comment


    • #3
      keiner eine Antwort...
      » http://www.htaccess-generator.com

      Comment


      • #4
        jetzt habe ich es mal zum teil hinbekommen... allerdings kommt jetzt immer "wrong data" beim login, obwohl die daten stimmen. ich habe eine tabelle auth mit username und password als tabelle und folgenden code:

        PHP Code:
        $my_auth = new Auth('MDB2'$db''true);

        $my_auth->start();

        if(
        true===$my_auth->getAuth()) {
                print 
        "Sie sind drin";

        $db wird abgeleitet von:

        PHP Code:
        $db =& MDB2::singleton($dsn); 
        was läuft jetzt schon wieder schief? das passwort in der datenbank ist nicht md5 verschlüsselt, aber das muss ja auch nicht, oder?
        » http://www.htaccess-generator.com

        Comment

        Working...
        X