PDA

Просмотр полной версии : Нужна помошь


Tem
14.06.2006, 19:33
Значить так , у меня есть онлайн игра, на её гланой странице есть такой код
if(session_is_registered('login'))
{
print "Ваш персонаж активирован! Пожалуйста авторизируйтесь ещё раз!<BR>Если вы видите это окно не первый раз, значит вы пытаетесь войти в игру несколькими персонажами сразу!";
//print "<script>location.href='index.php';</script>";
session_unset();
}
else
{
session_register('login','pass');
print "<LINK REL=StyleSheet HREF='style.css' TYPE='text/css'>";

Регистрацию прохожу нормально, пишет что я зарегён и могу вступить в бой, но при попытки зайти выскакивает ошибка, которой я дал код сверху , можит поможите мне как с этим разобратся ?

P.S Знаю что session_is_registered возвращает TRUE, если имеется переменная с именем name, зарегистрированная в текущей сессии.

DIAgen
14.06.2006, 21:37
Как я понел, создается сессия session_register("login") если пользователь здет активации или не зарегестрирован, глянь выше когда она создается - даные берутся же откуда-то,тогда если session_register("login") отсувует все ОК, или попробуй переписать скрипт с $_SESSION!

Tem
14.06.2006, 21:55
что ешё скажите ?

DIAgen
14.06.2006, 22:22
что ешё скажите ?
Ты бы выложил бы сам фаил, а то по одному отрывку сказать ПОЧЕМУ и откуда берется что!

Tem
14.06.2006, 23:25
Бери как хотел :

<?
session_unset();
?>
<?
session_start();
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<?
if(session_is_registered('login'))
{
print "Ваш персонаж активирован! Пожалуйста авторизируйтесь ещё раз!<BR>Если вы видите это окно не первый раз, значит вы пытаетесь войти в игру несколькими персонажами сразу!";
//print "<script>location.href='index.php';</script>";
session_unset();
}
else
{
session_register('login','pass');
print "<LINK REL=StyleSheet HREF='style.css' TYPE='text/css'>";
include "conf.php";
$data = mysql_connect($base_name, $base_user, $base_pass);
mysql_select_db($db_name,$data);
$sql = "SELECT login,blok,blok_reason,password FROM users WHERE login='$login'";
$result = mysql_query($sql);
$db = mysql_fetch_array($result);

if(empty($login))
{
print "Вы не ввели логин!<BR>";
print "<a href='index.php' class=us>Назад</a><BR><BR>";
print "<hr color=#000000 noshade size=1 width=90% align=right>";
print "<div align=right>Be Warrior<BR>";
print "&copy 2006-2010</a></div>";
}
else if(empty($pass))
{
print "Вы не ввели пароль!<BR>";
print "<a href='index.php' class=us>Назад</a><BR><BR>";
print "<hr color=#000000 noshade size=1 width=90% align=right>";
print "<div align=right>Be Warrior<BR>";
print "&copy 2006-2010</a></div>";
}
else if($db["login"]=="")
{
print "Персонаж \"<B>$login</B>\" не неайден в базе данных!<BR>";
print "<a href='index.php' class=us>Назад</a><BR><BR>";
print "<hr color=#000000 noshade size=1 width=90% align=right>";
print "<div align=right>Be Warrior<BR>";
print "&copy 2006-2010</a></div>";
}
else
{
$pass_db = $db["password"];
$p = base64_decode($pass_db);
if($p!=$pass)
{
print "Неверный пароль для персонажа \"<B>$login</b>\"!<BR>";
print "<a href='index.php' class=us>Назад</a><BR><BR>";
print "<hr color=#000000 noshade size=1 width=90% align=right>";
print "<div align=right>Be Warrior<BR>";
print "&copy 2006-2010</a></div>";
}
else if($db["blok"]==1)
{
print "Персонаж \"<B>$login</b>\" казнен!<BR>";
print "Причина казни:<BR>";
echo $db["blok_reason"];
print "<BR><a href='index.php' class=us>Назад</a><BR><BR>";
print "<hr color=#000000 noshade size=1 width=90% align=right>";
print "<div align=right>Be Warrior<BR>";
print "&copy 2006-2010</a></div>";
}
else{
print "Добро пожаловать...";
$zayavka_c_m = 1;
$zayavka_c_o = 1;
$battle_ref = 0;
session_register('zayavka_c_m','zayavka_c_o','batt le_ref');
print "<script>location.href='warriors.php';</script>";
}
}
}
?>

DIAgen
14.06.2006, 23:41
Найде где регистрируется session_register('login');
и все станет на свои места! Здесь только проверяется зарегестрирована ли сессия со значение 'login', если нет, тогда уже вход в игру!

ferryman
15.06.2006, 11:32
DIAgen прав, лучше перепиши на $_SESSION и гемороя иметь не будешь...

Tem
15.06.2006, 16:58
примерно в каких файлах может это быть ?

DIAgen
15.06.2006, 18:02
Ну это надо смотреть куда посылаются даные которые ты водишь с главной страницы, а проще найти через тотал строчку session_register('login')

DimaHbl4
15.06.2006, 18:44
Кстати для этого дела пользуйся Delphi, я когда патчи для игр мутил им пользовался. Указываешь папку в котрой искать, и че искать.....Он тебе файлы выдает которые искать.

Tem
15.06.2006, 20:02
Пипец я месец делфи ишю негде найти немогу )) если есть дай сылку на довланд.

zyl
15.06.2006, 20:30
Вот могу ссылочку дать на сайт "поклонников" delphi:
_http://www.programmersclub.ru/help
А учёбник можно запрос в поисковике сделать типа "Учебник по Delphi 6 для чайников"
Последнее слово ни к кому не относится =)

Tem
15.06.2006, 21:22
+ я тебе дам ))) за то что хотел помоч, но мне редактор делфи нужен ))

DimaHbl4
15.06.2006, 22:34
http://ussvs-bes1.borland.com/WebDownload/userRegistration.jsp?sid=540 Сам делфи....
http://rapidshare.de/files/23144103/Borland_Delphi_2005_www_1_.lomalka.ru_.rar.html КРЯК