Ноя 21

Ядро (Core) – набор системных переменных, функций, классов.

Модули (Modules) – расширяют возможности сайта, обычно содержат информационное или функциональное нововведение. Обязательно принадлежат какому либо БЛОКУ. Иногда такие вещи называют виджетами. Примеры модулей: Статистика сайта, главное меню, навигация, голосование.

Компоненты (Components) – являются основными элементами функционального назначения CMS и/или сайта, визуально имеет самый большой размер на странице. Примеры компонентов: Статические страницы, Файловый архив, Галерея изображений, Главная страница.

Плагины (Plugins) – подключаемые элементы (переменные, функции, классы) расширяющие ЯДРО.

Боты (Bots) – небольшие функции (бывают трех типов: search, content, editor).

Темы (Themes) – *.tpl файлы созданные для библиотеки Smarty. Бывают трех типов: для ШАБЛОНА, для КОМПОНЕНТА, для МОДУЛЯ.

Скин (Skin) – определяют как визуально будет выглядеть страница сайта, это по большому счету это уже собранная страница: ШАБЛОН САЙТА известен, его БЛОКИ заполнены собранными МОДУЛЯМИ, не известен только КОМПОНЕНТ.

Шаблон (Template) – тема (.tpl) которая определяет схематическую разметку страницы (например, трехколоночная), содержит в себе БЛОКИ.

Блоки (Blocks) – контейнеры для МОДУЛЕЙ и КОМПОНЕНТА. Обозначены в ШАБЛОНЕ.

База данных MySQL (Data Base) – хранилище структурированной информации.

Страница (Page) – документ содержащий html форматированный текст, графику и т.д.

автор: \\ теги: ,

Ноя 18

сабж

Проект open-source,

Нужны специалисты: программисты, постановщики задач, тестировщики, дизайнеры

Требования к программисту:
знание PHP, MySQL, HTML, CSS, JavaScript, опыт работы с любой CMS

Требования к постановщику задач:
опыт работы в данной отрасли, умение грамотно излагать свои мысли

Требования к тестировщику:
просто продвинутый интернет пользователь

Требования к дизайнеру:
Опыт работы с графическими программам

Проект уже начат, только в одиночку процесс очень медленно идет.
Желающие поучаствовать в проекте могут писать на VMatvienko@gmail.com

Присылайте полную контактную информацию и резюме.

автор:

Ноя 09

Сегодня в FireFox обнаружил что при обновлении через Xajax обновленная таблица выглядит так как будто там перепутаны открывающие/закрывающие теги (td, tr).

Сразу скажу что в IE6 этого не происходит.

С помощью Web Developer Toolbar смотрю (View Generated Source), и что вижу:

1) Тег form из первой ячейки закрыт, хотя я его не закрывал

2) Тег TD тоже закрыт, причем до содержимого ячейки, после содержимого естественно стоит </td> поставленное мною

Каждая строка таблицы содержит форму, вот так схематически выглядит строка, если таблицу получаю не через ajax


   
1 2 3
x

А вот так через xajax


   
1 2 3 x

Решение как такое победить пока не найдено …

автор: \\ теги: ,

Ноя 06

Частенько нужно программно зайти на какой нибудь сайт, но так, чтобы это выглядело так, что кто-то загрузил страницу в браузере.

Snoopy – это PHP класс эмулирующий работу веб. браузера, он позволяет получать содержимое страницы и например отправлять данные форм.

Последняя дата обновления ноябрь 2005 года.

Запросу на получение страницы можно подсунуть: хост (адрес страницы), порт, куки, реферальную страницу(адрес страницы по ссылке с которой якобы заходим), агента(название браузера), логин/пароль базовой авторизации, все что хотите в содержимое заголовка (header). Еще можно установить атрибуты прокси сервера – это нужно во первых для анонимности и во вторых против бана можно сменить прокси сервер. Есть поддержка редиректов, фреймов.

Кроме получения содержимого страницы есть функции для:

а) вытаскивания чистого текста (без тегов)

б) получения всех ссылок на странице

в) получения форм

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

==================================

Теперь о том чего нет, и что хотелось бы видеть в классе

1) Более сложный парсинг ссылок, т.е. не только нужны порой сами урлы, но и текст ссылок

2) Парсинг всех используемых на странице картинок

3) Более сложная работа с формами. Получение формы в объект, заполнение переменных объекта значениями, отправка запроса

Немного фантастики …

4) Эмуляция выполнения событий javascript например клики по объектам наведение курсором и т.д. получения измененной страницы после действия javascript. Это же касается и vb script

5) Выполнение ajax запросов. Получение измененной страницы после исполнения ajax

6) Поддержка работы flesh обектов. Возможность сохранить в файл, нажать на ссылку

автор: \\ теги: , ,

Ноя 02

Сразу скажу что на PHPConf 2007 я не был, получилось это потому что я живу в другой стране (Казахстане), а конференция проходила в Москве. Первая из причин Россияне очень долго не отвечали на присланную заявку на участие, потом ожили когда было уже поздно, т.к. бронировать билет на самолет нужно за месяц до отлета, еще довольно интересно себя повели … прислали письмо в котором требовали оплатить в течении 3 дней иначе меня исключат из участников, у нас на работе естественно своя бюрократия – оформление платежа займет 3 недели. Организаторы как раз через 3 недели опять написали письмо, с вопросом поеду ли я на конференцию, до начала конференции оставалось 4 дня, конечно ответил что не поеду.

Вобщем или бюрократия виновата или самому шустрее быть надо было.

После проведения выложили некоторые презентации, и даже аудио-записи докладов. В принципе листая презентацию в PowerPoint и одновременно слушая докладчика, некоторого эффекта как будто побывал на конфе можно добиться. Только вот аудио не все в наличии и конечно презентации тоже не все.

Потом на сайте phpclub.ru выложили в новостях “Принимаются заказы на DVD с материалами конференции PHPConf2007(7 DVD, доклады и ответы на вопросы)”, конечно я заказал, итогом мне это обошлось в 144 USD. Доставка заняла почти две недели, авипочтой России. Еще один казус по доставке, оправка через пониэкспресс или DHL, чревата еще таможенным налогом. В DHL(г.Москва) сказали, что могут доставить тока в Алматы и я там буду растомаживать, ладно растоможка деньги дело наживное, но в Алмату то почему при том, что офис DHL есть в Усть-Каменогорске (гы-гы наверное нет таможни). Вобщем через DHL шлите письма и открытки, повторяю никаких бандеролей.

Вчера просмотрел первый диск

Практика разработки корпоративных веб-приложений 2007

Аспектно-ориентированное программирование(AOP) в PHP

автор: \\ теги: ,

Окт 31

Не секрет что движок форума PHPbb очень сильно распространен в интернете. Это и не удивительно т.к. он бесплатен и по своему функционалу не уступает платным аналогам. Но он имеет слабую защиту captcha.

Разместил статью “Распознавание CAPTCHA от PHPbb” из личного, так сказать опыта.

автор:

Окт 31

Страница  Дмитрия Шейко. В разделах сайта Вы можете ознакомиться с работами автора в сфере управления веб-содержанием. Там представлены публикации, презентации и описания проектов автора.

Веб. развивается, Дмитрий Шейко человек и программист  который часто участвует в конференциях со своими докладами, вобщем рекомендую его интересы отслеживать … чтобы быть на гребне волны ;-).

автор: \\ теги: , ,

Окт 28

 Оригинальное название: ИСПОЛЬЗОВАНИЕ УСЛОВИЙ ВОСТРЕБОВАННОСТИ СПЕЦИАЛИСТОВ ДЛЯ МОНИТОРИНГА КАЧЕСТВА ПОДГОТОВКИ КАДРОВ В ОБЛАСТИ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ.

1) хотя статья была написана давно принципы изложенные в ней все еще актуальны;

2) хотя статья была написана как руководство для применения в ВУЗе, описаный алгоритм можно применять для себя лично, особенно если Вы будущий IT специалист.

Анализ спроса на IT специалистов для мониторинга востребованности спец. курсов

автор: \\ теги: ,

Окт 24

С первых дней своего существования криптография преследовала цель спрятать содержание важных разделов письменных документов, имевших отношение к таким сферам магии, как гадание и заклинание. В одной из рукописей о магии, датируемой III веком, используется шифр, чтобы скрыть важные части колдовских рецептов. Криптография часто была на службе магии во времена средневековья, и даже в эпоху Возрождения с помощью шифров алхимики засекречивали важные части формул получения философского камня.
Ну все беру с полки книгу по магии и начинаю расшифровывать, или может Гарри Поттера пересмотреть 😉

автор: \\ теги: ,

Окт 23

Ошибка наверное все таки не php, а моя собственная, хотя кто его знает может так и должно обрабатываться …

Итак как я наступил на эти грабли: в массиве $_REQUEST лежит переменная operator в переменной значение 0, в операторе if сравниваю значение этой переменной с нулем

if ($_REQUEST["operator"] != 0)
   echo "Not ok";
else
   echo "Ok";

И вижу на выводе “Not ok”. Я точно знаю что в переменной $_REQUEST[“operator”] лежит ноль, более того я вижу это распечатав массив $_REQUEST, командой print_r($_REQUEST);

Далее я ушел в небольшой ступор, и даже пригласил сотоварища посмотреть свежим взглядом что не так.

Пока товарищь шел, за эти 5 секунд я поставил ноль в кавычки, и оппа все заработало, и товарищь выпалил что нужно поставить !== (восклицательный знак и два равно), хм всю жизнь сравнивал == или !=, полез в документацию разбираться с темой.

В документации написано:
$a !== $b Неидентичность True, если $а не равно $b, или они разного типа

Товариш был не прав, но его указание из этой темы.

Копаем дальше, функцией gettype($_REQUEST[“operator”]) выясняю что у меня из формы нуль приходит строкового типа, а нуль без кавычек естественно числовой тип. Хм. ну и что PHP слабо типизированный язык программирования, когда нужно приведение типов должно сработать автоматом, но у меня в скрипте в IF этого не произошло 🙁

Итого: Или это у меня такая версия php, или учить php лучше надо было, блин и такие грабли после 3,5 лет программирования на php, стыд и позор.

автор: \\ теги: , ,