Seite 1 von 1

Login Password abfrage von con_frontendusers

Verfasst: Do 27. Apr 2006, 14:24
von php0815
Was mache falsch

Fatal error: Call to a member function on a non-object in /home/htdocs/web2/html/kk/cms/front_content.php(771) : eval()'d code on line 982

Zeile 982 = if ($db2->next_record())

Code: Alles auswählen

<?php
    if($_POST['ku_nr_log']!='')
    {
      $ku_nr = $_POST['ku_nr_log'];
      $pass_log = $_POST['pass_log'];
      $pwd = md5($pass_log);

      $db2 = new DB_Contenido;
      $db2 = "SELECT ku_nr, password FROM ".$cfg['tab']['con_frontendusers']." WHERE ku_nr = '$ku_nr'";

        if ($db2->next_record()) 
        {
            $ku_nr = $db2->f("ku_nr");
            $password = $db2->f("password");
        }
      if($pwd == $password)
      {
        echo" testausgabe";
      }
?>

Verfasst: Do 27. Apr 2006, 15:24
von xmurrix
Hallo php0815,

im Code wird zuerst eine DB-Instanz $db2 erstellt und in der nächsten Zeile wird der Variablen $db2 ein String(die SQL-Anweisung) zugewisen.
Ab diesem Moment ist $db2 kein Contenido-Datenbankobjekt, darum liefert der PHP-Parser die Fehlermeldung.

Außerdem sollte die SQL-Anweisung noch ausgeführt werden, dies geschieht mit der query-Methode der DB_Contenido-Klasse.

Code: Alles auswählen

$db2 = new DB_Contenido;
$sql = "SELECT ku_nr, password FROM ".$cfg['tab']['con_frontendusers']." WHERE ku_nr = '$ku_nr'";
$db2->query($sql);

if ($db2->next_record())
...
Gruß
xmurrix

Verfasst: Do 27. Apr 2006, 15:29
von php0815
Danke es funzt
manchmal sieht man den Wald vor lauter Bäume nicht

Verfasst: Do 27. Apr 2006, 15:58
von HerrB
Und wenn man es ganz schick macht, nimmt man das Objekt:

Code: Alles auswählen

cInclude("classes", "class.frontend.users.php");

$oFEUsers = new FrontendUserCollection;
$oFEUsers->setWhere("ku_nr", $ku_nr);
$oFEUsers->query();

if ($oFEUser = $oFEUsers->next()) {
   $ku_nr = $oFEUser->get("ku_nr");
   $password = $oFEUser->get("password");
}
...
Gruß
HerrB

Verfasst: Do 27. Apr 2006, 16:55
von php0815
Gibt es eine Übersicht über die Objekte und deren funktionen

Das sieht ja echt toll aus bei euch lerne ich ja noch das Programieren habe bis jetzt mir alles selbst bei gebracht.
Es macht mir immer mehr Spaß mit Contenido zu arbeiten leider mache ich das nur in meiner Freizeit.

Verfasst: Do 27. Apr 2006, 17:13
von HerrB
Na ja, man kann sich eine Doku erzeugen (steht irgendwo im Forum), die hilft aber nicht so weiter.

Das für Dich Relevante steht in contenido/classes/class.frontend... und in der class.generericdb.php (so generell, was es an get usw. gibt.) Sehr schön auch: getProperty/setProperty (da gibt es gerade ein Beispiel bei Modul-Requests). Das wird dann auch noch frontendusers-Plugin-kompatibel...

Gruß
HerrB