1 Attachment(s)
Re: Perfect world 1.4.6 Register problem
this one i am trying not loging into game
Code:
$Salt = $Login.$Pass; $Salt = md5($Salt);
$Salt = "0x".$Salt;
MySQL_Query("call adduser('$Login', $Salt, '0', '0', '0', '0', '$Email', '0', '0', '0', '0', '0', '0', '0', '', '', $Salt)") or die ("Can't execute query.");
echo "Account <b>".$Login."</b> has been registered.";
// echo "Conta <b>".$Login."</b> foi bem registrada.";
working login into game is this
Code:
// $Salt = $Login.$Pass; // $Salt = md5($Salt);
// $Salt = "0x".$Salt;
$Salt = base64_encode(md5($Login.$Pass, true));
MySQL_Query("call adduser('$Login', '$Salt', '0', '0', '0', '0', '$Email', '0', '0', '0', '0', '0', '0', '0', '', '', '$Salt')") or die ("Ðккаунт не зарегиÑтрирован");
$mysqlresult=MySQL_Query("select * from `users` WHERE `name`='$Login'");
$User_ID=MySQL_result($mysqlresult,0,'ID');
MySQL_Query("call usecash({$User_ID},1,0,1,0,".$config['gold'].",1,@error)") or die ("Голд не выдан");
echo "<font color='green'>Ðккаунт <b>".$Login."</b> УÑпешно зарегиÑтрирован :) Ваш ID: ".$User_ID." <br/> ".$config['gold']." голда начиÑлено. Голд придет в течении 5-10 минут";
here my phpmyadmin version
Attachment 134213
i will try this accuirepasswd and inform
Re: Perfect world 1.4.6 Register problem
i have changed acquireuserpasswd and imported
Code:
CREATE TABLE IF NOT EXISTS `users` ( `ID` int(11) NOT NULL DEFAULT '0',
`name` varchar(32) NOT NULL DEFAULT '',
`passwd` varchar(64) NOT NULL,
`Prompt` varchar(32) NOT NULL DEFAULT '',
`answer` varchar(32) NOT NULL DEFAULT '',
`truename` varchar(32) NOT NULL DEFAULT '',
`idnumber` varchar(32) NOT NULL DEFAULT '',
`email` varchar(64) NOT NULL DEFAULT '',
`mobilenumber` varchar(32) DEFAULT '',
`province` varchar(32) DEFAULT '',
`city` varchar(32) DEFAULT '',
`phonenumber` varchar(32) DEFAULT '',
`address` varchar(64) DEFAULT '',
`postalcode` varchar(8) DEFAULT '',
`gender` int(11) DEFAULT '0',
`birthday` datetime DEFAULT NULL,
`creatime` datetime NOT NULL,
`qq` varchar(32) DEFAULT '',
`passwd2` varchar(64) DEFAULT NULL,
PRIMARY KEY (`ID`),
UNIQUE KEY `IX_users_name` (`name`),
KEY `IX_users_creatime` (`creatime`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DELIMITER $$
CREATE PROCEDURE `acquireuserpasswd`(in name1 VARCHAR(64), out uid1 INTEGER, out passwd1 VARCHAR(64))
BEGIN
DECLARE passwdtemp VARCHAR(64);
START TRANSACTION;
SELECT id, passwd INTO uid1, passwdtemp FROM users WHERE name = name1;
SELECT passwdtemp INTO passwd1;
COMMIT;
END$$
CREATE PROCEDURE `addForbid`(in userid1 INTEGER, in type1 INTEGER, in forbid_time1 INTEGER, in reason1 BINARY(255), in gmroleid1 INTEGER)
BEGIN
DECLARE rowcount INTEGER;
START TRANSACTION;
UPDATE forbid SET ctime = now(), forbid_time = forbid_time1, reason = reason1, gmroleid = gmroleid1 WHERE userid = userid1 AND type = type1;
SET rowcount = ROW_COUNT();
IF rowcount = 0 THEN
INSERT INTO forbid VALUES(userid1, type1, now(), forbid_time1, reason1, gmroleid);
END IF;
COMMIT;
END$$
when i am login in game i get this
Code:
root@ubuntu:~# TRACE : gdelivery::matrixpasswd query, user=redlistGQueryPasswd:account is redlist , login ip is 192.168.1.2
TRACE : matrixpasswd NOT usbbind user 1056
TRACE : gdeliveryserver::statusannounce,online=0,fakemax=6000,load=0,attr=-805306368
TRACE : KeepAlive sid=8
Re: Perfect world 1.4.6 Register problem
in register you have:
Code:
$Salt = "0x".$Salt;
otherwise in logging query
Code:
/ $Salt = $Login.$Pass; // $Salt = md5($Salt);
// $Salt = "0x".$Salt;
$Salt = base64_encode(md5($Login.$Pass, true));
MySQL_Query("call adduser('$Login', '$Salt', '0', '0', '0', '0', '$Email', '0', '0', '0', '0', '0', '0', '0', '', '', '$Salt')") or die ("Ðккаунт не зарегиÑтрирован");
there is the difference...
for correct logging script you need changes comments for looks like this:
Code:
$Salt = $Login.$Pass;
$Salt = md5($Salt);
$Salt = "0x".$Salt;
// $Salt = base64_encode(md5($Login.$Pass, true));
MySQL_Query("call adduser('$Login', '$Salt', '0', '0', '0', '0', '$Email', '0', '0', '0', '0', '0', '0', '0', '', '', '$Salt')") or die ("Ðккаунт не зарегиÑтрирован");
Re: Perfect world 1.4.6 Register problem
if i use $Salt = base64_encode(md5($Login.$Pass, true)); i can't login into Panel of this http://forum.ragezone.com/f751/relea...painel-865975/
the login panel code
Code:
<?php
if(isset($_POST['logon']))
{
if(empty($_POST['login']))
{
$RESULT .= "<p>field \"Login\" this blank.</p>";
}
if(empty($_POST['password']))
{
$RESULT .= "<p>field \"senha\" this blank.</p>";
}
if (ereg("[^0-9a-zA-Z_-]", $_POST['login'], $Txt))
{
$RESULT .= "<p>Username contains invalid characters.</p>";
}
if (ereg("[^0-9a-zA-Z_-]", $_POST['password'], $Txt))
{
$RESULT .= "<p>Password contains invalid characters.</p>";
}
if(empty($RESULT))
{
$login = StrToLower(Trim($_POST['login']));
$password = Trim($_POST['password']);
$password = md5($login.$password, true);
$Query = MySQL_Query("select * from `users` WHERE `name`='{$login}' AND `passwd`='{$password}'");
if(mysql_num_rows($Query) == 1)
{
$_SESSION['log'] = 1;
$_SESSION['id'] = MySQL_result($Query, 0, 'id');
$_SESSION['login'] = MySQL_result($Query, 0, 'name');
$Admin_Query = MySQL_Query("select * from `admin` WHERE `userid` = '{$_SESSION['id']}'");
$Admin = mysql_num_rows($Admin_Query);
if($Admin > 0)
{
$_SESSION['admin'] = "1";
}
echo "<meta http-equiv='Refresh' content='0;URL=index.php'>";
}
else
{
$RESULT .= "<p>Username or password incorrect!</p>";
}
}
}
?>
Re: Perfect world 1.4.6 Register problem
Oh god, how about coming back when you know at least something about what you are doing?
Re: Perfect world 1.4.6 Register problem
... your register script use 0x.md5.$login.$pass WITHOUT base64
... your authd calling datas from mysql with base64 encode, like this $Salt = base64_encode(md5($Login.$Pass, true));
see the difference?
read my post again
Re: Perfect world 1.4.6 Register problem
Quote:
Originally Posted by
Hycker
... your register script use 0x.md5.$login.$pass WITHOUT base64
... your authd calling datas from mysql with base64 encode, like this $Salt = base64_encode(md5($Login.$Pass, true));
see the difference?
read my post again
yes thank you i am not mean that i just want to know where to change same base64_encode(md5($Login.$Pass, true)); into this panel
to work with base64_encode(md5($Login.$Pass, true));
Code:
<?php
if(isset($_POST['logon']))
{
if(empty($_POST['login']))
{
$RESULT .= "<p>field \"Login\" this blank.</p>";
}
if(empty($_POST['password']))
{
$RESULT .= "<p>field \"senha\" this blank.</p>";
}
if (ereg("[^0-9a-zA-Z_-]", $_POST['login'], $Txt))
{
$RESULT .= "<p>Username contains invalid characters.</p>";
}
if (ereg("[^0-9a-zA-Z_-]", $_POST['password'], $Txt))
{
$RESULT .= "<p>Password contains invalid characters.</p>";
}
if(empty($RESULT))
{
$login = StrToLower(Trim($_POST['login']));
$password = Trim($_POST['password']);
$password = md5($login.$password, true);
$Query = MySQL_Query("select * from `users` WHERE `name`='{$login}' AND `passwd`='{$password}'");
if(mysql_num_rows($Query) == 1)
{
$_SESSION['log'] = 1;
$_SESSION['id'] = MySQL_result($Query, 0, 'id');
$_SESSION['login'] = MySQL_result($Query, 0, 'name');
$Admin_Query = MySQL_Query("select * from `admin` WHERE `userid` = '{$_SESSION['id']}'");
$Admin = mysql_num_rows($Admin_Query);
if($Admin > 0)
{
$_SESSION['admin'] = "1";
}
echo "<meta http-equiv='Refresh' content='0;URL=index.php'>";
}
else
{
$RESULT .= "<p>Username or password incorrect!</p>";
}
}
}
?>
Re: Perfect world 1.4.6 Register problem
Quote:
Originally Posted by
rnsalt4
yes thank you i am not mean that i just want to know where to change same base64_encode(md5($Login.$Pass, true)); into this panel
to work with base64_encode(md5($Login.$Pass, true));
Code:
<?php
if(isset($_POST['logon']))
{
if(empty($_POST['login']))
{
$RESULT .= "<p>field \"Login\" this blank.</p>";
}
if(empty($_POST['password']))
{
$RESULT .= "<p>field \"senha\" this blank.</p>";
}
if (ereg("[^0-9a-zA-Z_-]", $_POST['login'], $Txt))
{
$RESULT .= "<p>Username contains invalid characters.</p>";
}
if (ereg("[^0-9a-zA-Z_-]", $_POST['password'], $Txt))
{
$RESULT .= "<p>Password contains invalid characters.</p>";
}
if(empty($RESULT))
{
$login = StrToLower(Trim($_POST['login']));
$password = Trim($_POST['password']);
$password = md5($login.$password, true);
$Query = MySQL_Query("select * from `users` WHERE `name`='{$login}' AND `passwd`='{$password}'");
if(mysql_num_rows($Query) == 1)
{
$_SESSION['log'] = 1;
$_SESSION['id'] = MySQL_result($Query, 0, 'id');
$_SESSION['login'] = MySQL_result($Query, 0, 'name');
$Admin_Query = MySQL_Query("select * from `admin` WHERE `userid` = '{$_SESSION['id']}'");
$Admin = mysql_num_rows($Admin_Query);
if($Admin > 0)
{
$_SESSION['admin'] = "1";
}
echo "<meta http-equiv='Refresh' content='0;URL=index.php'>";
}
else
{
$RESULT .= "<p>Username or password incorrect!</p>";
}
}
}
?>
Here (next time get a book and learn about what you do):
if(empty($RESULT))
{
$login = StrToLower(Trim($_POST['login']));
$password = Trim($_POST['password']);
$password = base64_encode(md5($login.$password, true));