HI
Ich habe ein Problem mit meinem Login Script, immer wenn ich mich einlogge, komme ich auf die selbe Seite und die Felder sind wieder leer.
Also habe ich es mit error_reportin(E_ALL); versucht und jetzt kommt folgendes:
Und hier die class.inc.php
Und hier noch die Login.php
Ich habe ein Problem mit meinem Login Script, immer wenn ich mich einlogge, komme ich auf die selbe Seite und die Felder sind wieder leer.
Also habe ich es mit error_reportin(E_ALL); versucht und jetzt kommt folgendes:
PHP:
Notice: Undefined property: mysql in /var/www/web14/html/login2/script/class.inc.php on line 14
Notice: Undefined property: mysql_db in /var/www/web14/html/login2/script/class.inc.php on line 17
Notice: Undefined index: nick in /var/www/web14/html/login2/login.php on line 21
Und hier die class.inc.php
PHP:
<?php
// script starts here //
if (!defined ('_true_login_script')) die ('d00fer l33t haxX0r!');
class Login
{
function Login ()
{ $this->GLogin = true; }
function connect ()
{
if (!$this->mysql)
$this->mysql = mysql_connect (_mysql_host,_mysql_user,_mysql_pass);
if (!$this->mysql_db)
$this->mysql_db = mysql_select_db (_mysql_db);
return $this->mysql_db;
}
function close ()
{
if ($this->mysql)
mysql_close ($this->mysql);
}
function startsession ()
{
session_start();
}
function checkadmin ($name,$pass)
{
if ($name != '' && $pass != '')
{
$result = mysql_query ('SELECT * FROM `'._mysql_table.'` WHERE md5name = \''.md5(strtolower($name)).'\';');
if (mysql_affected_rows () > 0)
{
if (md5($pass) != mysql_result ($result,0,'pass'))
{
$return['state'] = false;
$return['error'] .= "Falsches Passwort\n";
}
else
{
if (mysql_result ($result,0,'active') != 1)
{
$return['state'] = false;
$return['error'] .= "Account nicht aktiviert\n";
}
else
{
if (mysql_result ($result,0,'blocked') == 1)
{
$return['state'] = false;
$return['error'] .= "Account wurde gesperrt\n";
}
else
{
if (mysql_result ($result,0,'admin') != 1)
{
$return['state'] = false;
$return['error'] .= "Kein Administrator\n";
}
else
$return['state'] = true;
}
}
}
}
else
{
$return['state'] = false;
$return['error'] .= "Benutzer existiert nicht\n";
}
}
return $return;
}
function checkuser ($name,$pass)
{
if ($name != '' && $pass != '')
{
$result = mysql_query ('SELECT * FROM `'._mysql_table.'` WHERE md5name = \''.md5(strtolower($name)).'\';');
if (mysql_affected_rows () > 0)
{
if (md5($pass) != mysql_result ($result,0,'pass'))
{
$return['state'] = false;
$return['error'] .= "Falsches Passwort\n";
}
else
{
if (mysql_result ($result,0,'active') != 1)
{
$return['state'] = false;
$return['error'] .= "Account nicht aktiviert\n";
}
else
{
if (mysql_result ($result,0,'blocked') == 1)
{
$return['state'] = false;
$return['error'] .= "Account wurde gesperrt\n";
}
else
$return['state'] = true;
}
}
}
else
{
$return['state'] = false;
$return['error'] .= "Benutzer existiert nicht\n";
}
}
return $return;
}
function register ($name,$pass,$pass2,$email,$rules)
{
if ($name == '' || $pass == '' || $email == '' || !ereg("^.+@.+\\..+$",$email) || $pass2 == '')
{
$return['state'] = false;
$return['error'] .= "Bitte Benutzername, Passwort & Emailadresse angeben\n";
}
else
{
if ($rules != 'yes')
{
$return['state'] = false;
$return['error'] .= "Bitte die Regeln akzeptieren\n";
}
else
{
if ($pass != $pass2)
{
$return['state'] = false;
$return['error'] .= "Passwörter müssen übereinstimmen\n";
}
else
{
$query = mysql_query ('SELECT * FROM `'._mysql_table.'` WHERE md5name = \''.md5(strtolower($name)).'\';');
if (mysql_affected_rows() > 0)
{
$return['state'] = false;
$return['error'] .= "Username existiert bereits\n";
}
else
{
$activatestring = md5(rand(0,100000));
$query = mysql_query ('INSERT INTO `'._mysql_table.'`
(`id`,`name`,`md5name`,`pass`,`email`,`active`,`blocked`,`admin`,`lastlogin`,`lastip`)
VALUES (\'\',\''.addslashes (substr($name,0,255)).'\',\''.md5(strtolower($name)).'\',
\''.md5($pass).'\',\''.$email.'\',\''.$activatestring.'\',\'0\',\'0\',\''.time().'\',\''.$_SERVER['REMOTE_ADDR'].'\');');
$link = _offical_path_to_register_file;
$link .= '?activate='.$activatestring;
$link .= '&id=';
$link .= mysql_insert_id();
mail ($email, 'Account Activation', str_replace('#link#',$link,join(file('script/templates/email.txt'))));
$return['state'] = true;
}
}
}
}
return $return;
}
function activate ($id,$code)
{
mysql_query ('UPDATE `'._mysql_table.'` SET active = \'1\' WHERE active = \''.addslashes ($code).'\' AND id = \''.addslashes ($id).'\';');
$result = mysql_query ('SELECT * FROM `'._mysql_table.'` WHERE id = \''.addslashes ($id).'\';');
if (mysql_result ($result,0,'active') == '1')
$r['state'] = true;
else
$r['state'] = false;
return $r;
}
}
?>
Und hier noch die Login.php
PHP:
<?php
ob_start();
?>
<?php
error_reporting(E_ALL);
// script starts here //
define ('_true_login_script',true); #allow including files
#includen der config und der loginklasse
include ('script/class.inc.php');
include ('script/config.inc.php');
$xlogin = new Login();
$xlogin->connect();
$xlogin->startsession();
if ($_SESSION['login'] !== true)
{
if ($_POST['nick'] && $_POST['pass'])
{
$is_user = $xlogin->checkuser ($_POST['nick'],$_POST['pass']);
if ($is_user['state'])
{
$_SESSION['login'] = true;
$_SESSION['nick'] = $_POST['nick'];
$_SESSION['pass'] = $_POST['pass'];
mysql_query (
'UPDATE `'._mysql_table.'` SET lastlogin = \''.time().'\',
lastip = \''.$_SERVER['REMOTE_ADDR'].'\'
WHERE md5name = \''.md5(strtolower($_POST['nick'])).'\';'
);
}
else include ('script/templates/faileduser.php');
}
else include ('script/templates/userlogin.php');
}
if ($_SESSION['login'] === true)
{
header ("Location: "._goto_after_login);
$xlogin->close();
exit();
}
$xlogin->close();
ob_end_flush(); ?>
Zuletzt bearbeitet: