Архив ‘Всё остальное’ Category

Опять PHP — скрытая подмена понятий :)

<? print_r($_POST); ?> <form method=»POST»> <input name=»через пробел»> <input type=»submit»> </form> Как вы думаете, что выведет print_r? Array ( [через пробел] => ) ? А вот и нифига! Он выведет Array ( [через_пробел] => ) Вот такая зашитая фича. Для пробелов и точек. Берется отсюда: В файле main/php_variables.c, php_register_variable_ex (92 строка для PHP 5.1.4): /* […]

Кодировка по умолчанию — php много на себя берёт

Весь мозг себе сьел. Перенёс сайт на сервер. На предыдущем хостинге было всё ок — открывался как надо, все дела. На новой же системе — постоянный header UTF-8, хоть ты тресни. Я бы и рад конечно UTF — но HostCMS пока что поддерживает только Win1251 — так что стал копать. Перерыл весь апач — AddDefaultCharset […]

Новый логин Вконтакте — Perl, Curl

Собственно, уже не мудрствуя лукаво — кто хоть немного знает перл — разберётся. Вконтакте добавили редиректики, что не помешает доблестному Curl через них пройти и получить куку в файл. #!/usr/bin/perl -w use strict; use WWW::Curl::Easy; use Carp; sub getURL {   my $params = shift;   croak q[HASH needed as param] if ref($params) ne ‘HASH’;   croak q[HREF […]

Любимая функция для получения контента

Таскаю за собой по всем модулям и скриптам. sub getURL {   my $params = shift;   croak q[HASH needed as param] if ref($params) ne ‘HASH’;   croak q[HREF needed in HASH] if(!exists($params->{href}));   $params->{href} = q[http://].$params->{href} if $params->{href} !~ /^http(s)?:\/\//;   $params->{headers} = 0 if !$params->{headers};   $params->{ag} = qq($user_agents[rand(($#user_agents+1))]) if !exists $params->{ag};   $params->{timeout} = 20 if !exists $params->{timeout};   $params->{content_length} […]

«Защита» от обновления страницы по F5 :)

Навеяно SE и паранойей тамошнего ТС к ддос через F5 :DDD <script type="text/javascript"> document.onkeydown = KeyCheck; function KeyCheck(e) {   var KeyID = (window.event) ? event.keyCode : e.keyCode;   if(KeyID == 116){     return false;   } } </script>

Чем отличается PHP от FTP?

Этот вопрос мучает людей веками. Ответ на вопрос «Чем отличается PHP от FTP» прост. Но его никто не знает.

Мерзкие отличия MacOS от Linux

Задача: массово переконвертить файлы с расширением .php из Windows-1251 в UTF-8. Итоговое решение: for a in `find /files_folder -type f -name "*.php"`; do iconv -f Windows-1251 -t UTF8 $a > /tmp/cp.file; cat /tmp/cp.file > $a; done; rm -rf /tmp/cp.file Ну не ппц ли. Тамошний xargs не поддерживает -i, -I и -J работают через пень-колоду, а […]

Создать модуль для CPAN

Скорее для себя, чтобы не забыть $ cd /path/to/dev/folder/ $ h2xs -b 5.8.8 -AX Foo::Bar -v 1.00 Writing Foo-Bar/lib/Foo/Bar.pm Writing Foo-Bar/Makefile.PL Writing Foo-Bar/README Writing Foo-Bar/t/Foo-Bar.t Writing Foo-Bar/Changes Writing Foo-Bar/MANIFEST -b — минимальная версия Perl, нужная для работы модуля -v — версия модуля После чего распихиваем код по соответствующим файлам, не забывая про PerlDoc и тесты, […]

IMAP и POP Gmail через telnet или читать почту это просто

В этом нет ничего сложного — правда! Фактически — написать свой почтовик — проще простого. Так же просто как и читать почту через консоль. Далее — две маленькие статьи на живых примерах — как пользоваться POP3 и IMAP без почтового клиента. Читаем POP3 Вам потребуется Linux. Ну или поддержка OpenSSL в Windows — если она […]

Самая эффективная защита от парсинга

Самая эффективная зашита от парсинга (то есть защита от парсинга — я кстати вылез в топ гугл по запросу этому) — у сайта film.ru . Они просто отключили сайт когда я их начал парсить. Развожу руками.