PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Was ist falsch an meinem Login?



darkmoon.2xt.de
15-09-2003, 09:29
Hallo, bin dabei mir eine einfach Benutzerverwaltung aufzusetzen.

Mein bisheriges Login-Skript sieht so aus:




function passworttest()
{
$username = $_REQUEST['username'];
$password = $_REQUEST['password'];

$login = "not ok!";



$result = $db->Execute("SELECT login,pass FROM benutzer WHERE login='$username' AND pass='$password';");

if ($result != false) { $login = "ok"; }

if ($login == "ok")
{


...weitermachen weil ok



Das liefert mir aber immer nur:


Fatal error: Call to a member function on a non-object in /srv/www/test6.login-solutions.de/htdocs/index.php on line 17

Zeile 17 ist die, die mit $result anfängt.

Ich bin Anfänger auf dem Gebiet, wer kann mir helfen?

darkmoon.2xt.de

Gaert
15-09-2003, 10:53
Ganz einfach... $db ist kein Objekt!

Du hast wohl vergessen das Objekt zu erzeugen, oder es mit global in deine Funktion reinzuholen...

darkmoon.2xt.de
15-09-2003, 12:09
$db sollte normal schon eines sein, denn ich habe meine ADODB-Verbindung in einer Datei "db_init.inc.php" included (ganz am anfang der datei):



<?
include("db_init.inc.php");
?>


In der wird $db deklariert:



<?
include("adodb/adodb.inc.php");

$db = NewADOConnection('mysql');
$db->Connect("ip-sagichhiernicht", "dbuser", "passwort-sagichhiernicht", "test");
?>

Gaert
15-09-2003, 12:20
Ja... aber du hast $db nicht in deine Funktion passworttest() importiert...


global $db;


Deshalb steht das Objekt im Namensraum deiner Funktion nicht zur Verfügung.

Übrigens solltest du immer <?php statt <? verwenden!

darkmoon.2xt.de
15-09-2003, 12:25
Stimmt danke es geht!!!

Ich musste ein
$result = $db->Execute("anweisung"); machen, das gibt das als Array zurück :)

Yippiee

darkmoon.2xt.de