Blog. Just Blog

Быстрый поиск

Введите фрагмент названия статьи для поиска

Проверка корректности номера банковской карты

04.09.2014 | Категория: Web-мастеру и не только | Автор: ManHunter

Проверка корректности номера банковской карты

Для проверки корректности номера банковской карты используется алгоритм, разработанный еще в 1954 году Гансом Питером Луном, сотрудником фирмы IBM. Этот алгоритм очень прост в реализации на различных языках программирования, и, хоть он не дает 100% гарантии от преднамеренного искажения данных, может легко выявить случайные ошибки при вводе.

Читать статью целиком »
Просмотров: 13077 | Комментариев: 0

Исследование защиты программы MavorsGuard

11.03.2014 | Категория: Темная сторона Силы | Автор: ManHunter

Скриншот программы MavorsGuard

Программа MavorsGuard предназначена для защиты PHP-скриптов от изучения и модификации. Достигается это путем шифрования исходного текста с последующей его расшифровкой непосредственно во время выполнения. За все это требуется выложить некоторую сумму денег.

Читать статью целиком »
Просмотров: 5088 | Комментариев: 6

Как узнать статус ICQ на PHP

21.10.2013 | Категория: Web-мастеру и не только | Автор: ManHunter

Как узнать статус ICQ на PHP

Для получения статуса ICQ на сайтах обычно используется штатная возможность сервиса, а именно ссылка вида:

http://status.icq.com/online.gif?icq=XXXXXXXXX&img=N

Где XXXXXXXXX - номер проверяемой аськи, а N - стиль отображаемой иконки (число от 0 до 27). В ответ приходит картинка статуса с соответствующим стилем. Такой код обычно ставят на сайты, в подпись на форуме и тому подобное. Картинка отображается, все нормально. А как получить статус ICQ в автоматическом режиме? Например, на сервере по планировщику запускается скрипт, который должен отправить некие данные человеку в аську, но только в том случае, если он находится он-лайн. Или надо автоматически контролировать время работы техподдержки, отмечая когда они вышли в онлайн и когда ушли в оффлайн. Или ни одна из предлагаемых стандартных иконок с сервера ICQ не подходит под дизайн вашего сайта, а отображать статус оператора все равно надо. Или для незарегистрированных посетителей ресурса надо скрыть реальные номера ICQ пользователей (их легко узнать из ссылки на картинку статуса), но при этом хочется показать их статус. Это лишь несколько примеров, при желании варианты применения можно придумать еще.

Читать статью целиком »
Просмотров: 5082 | Комментариев: 3

Генерация последовательности уникальных кодов на PHP

12.10.2013 | Категория: Web-мастеру и не только | Автор: ManHunter
Иногда возникает задача генерации последовательности уникальных кодов по определенному формату. Это могут быть какие-нибудь одноразовые токены, коды лотерейных билетов, серийные номера, scratch-карты, да мало ли чего. Простое использование ГСЧ в этом случае не дает 100% гарантии, так как выдаваемые им значения могут повторяться, а при большом количестве кодов количество повторений будет только расти. Предлагаю вам следующее решение:
  1. // Набор символов для генерации кодов
  2. $str='1234567890ABCDEF';
  3. // Длина кода без учета разделителей
  4. $code_length=16;
  5. // Нужное количество кодов
  6. $codes_count=300000;
  7. // Позиции разделителя (0 - не надо)
  8. $code_separartor=4;
  9.  
  10. $tmp=array();
  11. $str_length=strlen($str)-1;
  12.  
  13. // Цикл до заполнения массива
  14. while (count($tmp)<$codes_count) {
  15.     // Сгенерировать индекс массива
  16.     $code='';
  17.     for ($i=0$i<$code_length$i++){
  18.         // Разделитель можно не добавлять
  19.         if ($i>&& $code_separartor>&& $i%$code_separartor==0) { $code.='-';}
  20.         $code.=substr($strmt_rand(0,$str_length), 1);
  21.     }
  22.     // Или в массив добавится новый элемент, или
  23.     // перепишется поверх уже имеющийся
  24.     $tmp[$code]=1;
  25. }
  26. // Теперь в массиве $codes уникальные коды
  27. $codes=array_keys($tmp);
Коды генерируются гарантированно уникальные (в пределах одной сессии). Это достигается за счет того, что в качестве кода сперва используются ключи массива, а не значения. Даже если какой-либо код будет сгенерирован повторно, то просто перезапишется уже имеющийся элемент массива, а не добавится новый. Отсутствие проверок типа in_array значительно повышает скорость работы генератора. Главный недостаток этого алгоритма в том, что для генерации больших объемов данных потребуется много оперативной памяти. Для особо критичных случаев при выборе символов, составляющих код, лучше использовать не программный ГСЧ, а какой-нибудь аппаратный, чтобы обеспечить максимальную непредсказуемость данных.

Читать статью целиком »
Просмотров: 10090 | Комментариев: 6

Загрузка файлов перетаскиванием в окно браузера

21.09.2013 | Категория: Web-мастеру и не только | Автор: ManHunter

Загрузка файлов перетаскиванием в окно браузера

Практически все современные web-сервисы предлагают пользователям такую фичу, как загрузку файлов простым перетаскиванием их в браузер. Это действительно очень удобно, когда надо загрузить сразу несколько файлов, поле загрузки может иметь произвольный вид и форму, т.к. не подвязано на стандартные элементы формы, и еще множество других плюсов. Как же это сделано? Очень просто. Мы уже рассматривали в одной из статей прием и отправку текстовых данных при помощи технологии AJAX, загрузка файлов выполняется не намного сложнее.

Читать статью целиком »
Просмотров: 21307 | Комментариев: 17

01 ... 06 07 08 09 10 11 12 ... 19
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2021
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.14 сек. / MySQL: 3 (0.0663 сек.) / Память: 4.75 Mb
Наверх