На сколько помню, названия тер в domain.data о_О
Не знаю, может кому (кто не использует фреймворки) пригодится в WEB разработке. Основное отличие от привычных сессий - при большом количестве пользователей не нагружается файловая система WEB сервера (все хранится на стороне клиента). Внимание! Данные хранятся почти в открытом виде, так что будьте внимательны. Так же есть возможность "привязки" куков к клиенту (по IP и HTTP_USER_AGENT). Перед созданием объекта класса, в Вас должны быть инициализированы следующие именованные константы: AUTH_BIND_IP - (true или false): "Привязать" куки к клиенту по IP (true - да, false - нет). AUTH_BIND_HUA - (true или false): "Привязать" куки к клиенту по HTTP_USER_AGENT (true - да, false - нет). AUTH_BIND_DOMAIN - (true или false): "Привязать" куки к домену (true - да, false - нет). AUTH_KEY - (строка-ключ): Строка, которая используется при генерации контрольной хеш-суммы. (чем строка длиннее и "разнообразнее" - тем лучше). Собственно что это нам дает: даже если куки клиента угонят, то злоумышленник не сможет ими воспользоваться и войти под учетной записью того клиента, у кого были угнаны эти куки. Методы класса: 1) SessionSetData($data, $expireTime); $data - отправляемые клиенту данные (строка, массив, целое число и т. д.), $expireTime - время "жизни" сессии. При отправке данные устанавливаются куки mvcboxauth_data и mvcboxauth_control_hash . Собственно mvcboxauth_data хранит сами данные, а mvcboxauth_control_hash хранит контрольную сумму этих данных. 2) SessionCheckData(); Выполняет проверку подлинности данных и возвращает true в случае подлинности данных и false в обратном случае. 3) SessionIsSet(); Проверяет существуют ли куки mvcboxauth_data и mvcboxauth_control_hash. 4) SessionClose(); Закрывает текущую сессию. 5) SessionGetData(); Получает данные. Напишем небольшой пример. Скрипт авторизации: <?php require_once 'cls_Auth.php'; $Auth = new cls_Auth(); /* * Тут еще какой-то код... */ if(!empty($_POST)) { /* Тут у нас какой-то код, который проверяет логин и пароль */ /* Допустим, что логин и пароль совпали. Выполняем авторизацию. В куках будем хранить ID пользователя. */ $Auth->SessionSetData($userId); } ?> Проверка (авторизирован пользователь или нет) <?php require_once 'cls_Auth.php'; $Auth = new cls_Auth(); /* * Тут еще какой-то код... */ if($Auth->SessionIsSet()) { if($Auth->SessionCheckData()) { echo 'Добро пожаловать, Ваш ID: '.$Auth->SessionGetData(); } else { $Auth->SessionClose(); die('Обнаружена подмена данных!'); } } else { die('Вы не авторизированы!'); } ?> Еще важный момент - все операции с куками должны происходить ДО отправки сообщения пользователю, то есть: <?php require_once 'cls_Auth.php'; $Auth = new cls_Auth(); echo 'Данные отправлены.'; $Auth->SessionSetData('ololo'); ?> Не будет работать! <?php require_once 'cls_Auth.php'; $Auth = new cls_Auth(); $Auth->SessionSetData('ololo'); echo 'Данные отправлены.'; ?> Будет работать! Вот в принципе как-то так :) Буду рад конструктивной критике. P. S. Класс "вырезан" со своего фреймворка.
нажми на картинку и скрин увеличится http://floomby.ru/s2/C49mgQ/full/
Скрины не видно)
Обратитесь к тем, кто занимается майнингом биткоинов) У них там целые фермы с топовых видеокарт. Может они согласятся за небольшую плату вскрыть архив.
P. S. Но пользоваться сессиями я бы не рекомендовал. Лично я пользуюсь самописным "велосипедом" для авторизации с жесткой привязкой куков к клиенту, благодаря чему даже если и угонят ваши куки через XSS (ну или каким-то другим способом), то не смогут ими воспользоваться.
Ну вот самый простой способ реализовать поддержку авторизации на сессиях: http://www.softtime.ru/bookphp/gl8_1.php
Спасибо добрый человек, а слодно ли будет туда запилить мне вход как у лк морза только не делать там магазин итд Ты об авторизации ?
<?php include 'config.php'; include 'header.php'; if(isset($_GET['p'])) { switch(($_GET['p']) { case 'news': include 'template/news.html'; break; case 'download': include 'template/download.html'; break; case 'story': include 'template/story.html'; break; case 'contacts': include 'template/contacts.html'; break; default: include 'error404.php'; break; } } else { /* Тут подключаешь то, что надо выводить при переходе на index.php */ } include 'footer.php'; ?> А вообще лучше сразу учиться писать в соответствии с MVC
Ионкуб до одного места. Как только ЛК гибата попал в шару так сразу же расшифровали первый попавшийся файл и вытащили механизм проверки лицензии.
Версии, которую я писал для drimer, нету в шаре.
Печальбеда не отправляется что то тут не то Сорри переписать не могу тк в мускуле нуб Помогите кто может Дай доступ к тестовому серверу. Помогу.
<?php define('MYSQL_HOST', 'localhost'); define('MYSQL_USER', 'login'); define('MYSQL_PASSWORD', 'password'); define('MYSQL_DBNAME', 'pw'); define('GOLG_COUNT', 100000000); /*В серебре*/ $connect = new PDO('mysql:'.MYSQL_HOST.';dbname='.MYSQL_DBNAME, MYSQL_USER, MYSQL_PASSWORD); $connect->query('SET NAMES utf8'); $query = $connect->prepare('SELECT uid FROM point WHERE zoneid=1'); $query->execute(); $accsOnLine = $query->fetchAll(); foreach($accsOnLine as $acc) { $query = $connect->prepare('call usecash(?,1,0,1,0,?,1,@Error)'); $query->execute(array($acc['uid'], GOLG_COUNT)); } ?> На наличие синтаксических ошибок не проверял, писал прям тут.
За БЛ.
Защититься можно 1 правилом для iptables
Добрый день , подскажите пожалуйста , такое вот дело : играю на сервере , потом мне в скайпе пишут люди говорят что у них линк ошибка серверной сети . Затем я также делаю релог на акк тоже "Линк , ощибка серверной сети" Затем я заходил в айвеб и смотрел что не работает , это вылетал auth , и каждый раз он по несколько раз вылетает.. Что делать? подскажите пожалуйста !!!! Я в подобных темах не раз уже отвечал как это лечится. Ищите.
Могу продать свой ЛК для 1.2.6 . По функционалу схож с ЛК морзе. Если интересует, то пиши в скайп: salitypw
ЛК шаровый ?
а где именно менять кодировку в ауте? Кодировка соединения с базой.
Меняешь в ауте кодировку с utf8 на ascii и перезапускаешь аут. Вот тебе и весь фикс.
Имена участников (разделяйте запятой).