Защита от телепортации в MMORPG игре
|
|
Prikol | Дата: Понедельник, 20 Августа 2012, 15:32 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Такая вот беда, клепаю ммо игрушку. И вот возник такой вопросик. В игре есть локации, ну например: /game.php?page=map_1 /game.php?page=map_2 /game.php?page=map_3
И хотелось, чтоб пользователи не могли просто ввести их адрес и перенестись, и я написал такую штуку:
if($_SESSION['username']){ include 'conect_db.php'; $block = $_SERVER['HTTP_REFERER']; if(strlen($block)>0){ /* Выводим локацию */
} else{ echo "<script>alert('Ай-ай-ай Не моно так делать');</script>"; } } else{ echo "<script>alert('Пройдите авторизацию');</script>"; }
И, вуаля, когда он просто вводит адрес, пользователю выводит сообщение: Ай-ай-ай Не моно так делать Но вдруг, я открыл Оперу, рассадник лагов, открываю исходный код и ввожу:
<script>location.href='/game.php?page=map_3';</script>
Тыкаю применить и меня переносит. Подскажите пожалуйста, как заклеить эту дыру?
Какие счета оборотно сальдовой ведомости нужно включить в строку дебиторской задолженности балансового листа?
Problems?)
Сообщение отредактировал Prikol - Понедельник, 20 Августа 2012, 15:34 |
|
| |
Ku-Klux | Дата: Понедельник, 20 Августа 2012, 16:03 | Сообщение # 2 |
участник
Сейчас нет на сайте
| убери скрипт и сделай так (названия таблиц от балды, я не знаю что у Вас): в таблице users добавь location код сделай что бы все записывалось в бд и нельзя было переходить в "неизвестные" зоны пример: у чела стоит в локе (бд) значение 1, далее он может перейти на - 1 или + 1 (то есть получается 0 или 2).
хотя вроде когда прочитал (перечитал) у тебя проверки вообще нету где чел находится =)
з.ы. если это опять про покемонов, то помогу за деньги =)
http://rus.1september.ru/urok <- уроки русского языка ----- - Почему же наш скрипт ничего не выводит? - Потому что вместо эхо мы написали инклуд! - Исправим - с кем не бывает. - Исправили, но все равно ничего не выводит - что за черт?
Оказывается мы запутались в четырех переменных, которые сами создали.
|
|
| |
Prikol | Дата: Понедельник, 20 Августа 2012, 16:05 | Сообщение # 3 |
частый гость
Сейчас нет на сайте
| Если не покемоны, то бесплатно?)) а в users есть табличка loc Там записывается, адрес локи.. Или это нужно все переделать?
Какие счета оборотно сальдовой ведомости нужно включить в строку дебиторской задолженности балансового листа?
Problems?)
Сообщение отредактировал Prikol - Понедельник, 20 Августа 2012, 16:06 |
|
| |
Ku-Klux | Дата: Понедельник, 20 Августа 2012, 16:11 | Сообщение # 4 |
участник
Сейчас нет на сайте
| тогда смотри сам на код и почему это происходит)
http://rus.1september.ru/urok <- уроки русского языка ----- - Почему же наш скрипт ничего не выводит? - Потому что вместо эхо мы написали инклуд! - Исправим - с кем не бывает. - Исправили, но все равно ничего не выводит - что за черт?
Оказывается мы запутались в четырех переменных, которые сами создали.
|
|
| |
Prikol | Дата: Понедельник, 20 Августа 2012, 16:23 | Сообщение # 5 |
частый гость
Сейчас нет на сайте
| Ну это гениальный ответ)) Когда просят помочь, это не значит, что меня нужно послать, а указать на ошибку, потролить, чтоб уложилось в голове, и показать пример))
Какие счета оборотно сальдовой ведомости нужно включить в строку дебиторской задолженности балансового листа?
Problems?)
|
|
| |
Ku-Klux | Дата: Вторник, 21 Августа 2012, 02:45 | Сообщение # 6 |
участник
Сейчас нет на сайте
| то что вы дали - это какая-то часть кода где чел переходит с локи на локу. (которую вы сами написали (?), хотелось бы увидеть вообще что происходит когда он переходит)
http://rus.1september.ru/urok <- уроки русского языка ----- - Почему же наш скрипт ничего не выводит? - Потому что вместо эхо мы написали инклуд! - Исправим - с кем не бывает. - Исправили, но все равно ничего не выводит - что за черт?
Оказывается мы запутались в четырех переменных, которые сами создали.
|
|
| |
Lord135 | Дата: Вторник, 21 Августа 2012, 08:54 | Сообщение # 7 |
постоянный участник
Сейчас нет на сайте
| Prikol, скайп есть?
|
|
| |