Блокировка доступа к элементам web страницы

27 августа, 2008
jquery blockui plugin

В этой статье я хочу рассказать о библиотеке, которая позволяет сделать неактивной часть web страницы или всю ее целиком.

Библиотека называется jQuery BlockUI Plugin и, как следует из названия, представляет собой плагин к jQuery.

Принцип работы следующий. Библиотека создает дополнительный слой (overlay) над всей страницей или каким-то блоком на ней.

Этот слой может содержать сообщение, картинку, диалог или вообще другую страницу с любыми элементами управления.

Если вы видели, как работают библиотеки типа Lightbox, то представляете, о чем идет речь.

Приведу простой пример. Допустим, необходимо заблокировать доступ к странице на время выполнения Ajax запроса.
Читать дальше »

Опубликовано в Ajax, CSS, HTML, JavaScript, PHP, Web разработка | Комментарии (7) »

Публикация постов в WordPress с помощью XML-RPC и CodeIgniter

25 августа, 2008
codeigniter wordpress xml-rpc

Движок WordPress буквально «нашпигован» различными функциями и возможностями. В этой статье я расскажу, как написать небольшое web приложение, из которого вы сможете публиковать посты в ваш блог.

Как вы понимаете, писать такое приложение имеет смысл только в том случае, если оно расширяет стандартные возможности движка.

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

Первая – это блог-клиенты. Тут преимущество в том, что вы можете писать пост без доступа в интернет и сохранить его на винчестере, а позже подключиться и опубликовать в блоге.

Вторая – различные программы для сеошников. Здесь смысл в том, чтобы публиковать посты автоматически в нескольких блогах.

Эта статья больше ориентирована на второй вариант.
Читать дальше »

Опубликовано в CodeIgniter, PHP, Web разработка, WordPress | Комментарии (3) »

Уязвимости в MySQL и SQL запросах

21 августа, 2008
mysql vulnerabilities

Эта заметка – вольный перевод статьи Stefan Esser MySQL and SQL Column Truncation Vulnerabilities.

SQL-инъекции (SQL-injection) на сегодняшний день остаются наиболее обсуждаемыми проблемами безопасности web приложений.

В тоже время, другие уязвимости SQL запросов, например, связанные со слишком длинными входными данными, обычно игнорируются, хотя могут привести ко всем видам проблем безопасности.

Первая уязвимость касается движка MySQL
Читать дальше »

Опубликовано в MySQL, PHP, Web разработка, Безопасность | Комментарии (8) »

Inferno: подключаем сторонние библиотеки к CodeIgniter

20 августа, 2008
codeigniter inferno

Использовать библиотеки сторонних разработчиков вместе с фреймворком CodeIgniter в большинстве случаев не сложно. Достаточно, чтобы библиотека соответствовала небольшому перечню требований.

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

Избавиться от этой проблемы можно с помощью библиотеки Inferno. Ее предназначение – подключение сторонних библиотек к фреймворку.
Читать дальше »

Опубликовано в CodeIgniter, PHP, Web разработка | Комментарии (14) »

Open Flash Chart – строим графики

16 августа, 2008
Скриншот графика - Open Flash Chart

Создание изображений – довольно сложная и трудоемкая задача. Если не использовать специальных библиотек.

Об одной из них я и хочу рассказать.

Open Flash Chart. Уже по названию становится ясно, что:

1) библиотека распространяется с открытыми исходниками и бесплатно;

2) предназначена для создания графиков;

3) использует технологию Flash.

Сразу остановлюсь на третьем пункте. Flash обладает одним недостатком. Если у посетителя не установлен Flash player, то график он не увидит.

Зато достоинств гораздо больше:

1) Интерактивность. При наведении указателя мыши на график появляется подсказка с данными выбранной точки.

2) Снижение нагрузки на сервер. Если использовать графики в виде картинок, то серверу придется создавать изображение при каждом запросе, а это довольно ресурсоемкая операция. В данном случае используется один и тот же Flash ролик, который входит в состав дистрибутива библиотеки. Серверный скрипт должен только создать текстовую строку с данными для построения графика.

3) Увеличение скорости загрузки, экономия трафика. Flash ролик грузится только один раз, занимает 63 кБ. При этом график может быть размером с экран браузера.

Но это все теория. Переходим практической части.
Читать дальше »

Опубликовано в HTML, PHP, Web разработка | Комментарии (3) »

Увеличиваем скорость загрузки web страниц

12 августа, 2008
javascript box

Недавно я наткнулся на одну очень интересную тему для WordPress - WP-Coda. Выглядит просто шикарно! Но дело не в этом.

Эта тема использует довольно много эффектов, реализованных с помощью JavaScript.

Мне стало интересно, во сколько эта красота обходится посетителям, и оказалось, что не так уж и дорого. Всего один js-файл размером 45кБ.

Дело в том, что автор упаковал семь исходных файлов в один и после этого сжал его упаковщиком вроде Packer JavaScript en PHP.

Но первый же эксперимент показал, что это не предел. Если упаковать этот файл в gzip архив, то его размер уменьшается до 21кБ. А большинство современных браузеров прекрасно работают с такими архивами.

При этом нет необходимости что-либо переделывать в самой теме.
Читать дальше »

Опубликовано в JavaScript, PHP, Web разработка | Комментариев нет »

Диаграммы взаимосвязей

6 августа, 2008

Диаграмма взаимосвязей компонентов CodeIgniter

Блог PHP::Impact опубликовал очень интересную подборку диаграмм.

Диаграммы отражают взаимосвязи между компонентами нескольких популярных php движков и фреймворков.

А именно:

WordPress 2.2.1
MediaWiki 1.12
phpBB 3.0
phpMyAdmin 2.9.1.1
Symfony 1.1
Zend Framework 1.5.2
CakePHP
CodeIgniter

Версии диаграмм немного отстают от последних релизов движков, но это не снижает их ценности. По-моему самое большое отставание у WordPress. 2.2.1 против 2.6. Особенно, если учесть, что в версию 2.5 были внесены довольно существенные изменения.

Глядя на диаграммы можно сразу выделить Zend Framework. Его структура явно сложнее большинства фреймворков. Хорошо это или плохо – вопрос философский ;) . Ответ будет зависеть от требований к конкретному проекту.

Самый простой - CodeIgniter. Отсюда высокая скорость, нетребовательность к ресурсам, легкость в изучении. Кстати, становится очевидной слабая связь (loose coupling) между его компонентами. Т.е. модули практически не зависят друг от друга, и загружаются, только когда вы их сами подключаете. Самое то для небольших проектов.

В общем, всем советую посмотреть эти диаграммы.

Спонсор поста:
Интересный Блог КОДера

Опубликовано в CodeIgniter, PHP, Web разработка, WordPress | Комментарии (5) »

Защита от спама: php скрипт для проверки трекбеков

4 августа, 2008

Спам в трекбеках

Спамерские технологии не стоят на месте. Все-таки изобретательные эти люди :-)

В одном из последних постов на Blue Hat SEO как раз и описан один из таких способов.

Вкратце идея следующая. Создается страница со ссылками на различные блоги. И на них же отправляются трекбеки. Т.е. на этих блогах, обычно в разделе комментариев, появляются ссылки на эту страницу.

Естественно, владельцы блогов начинают проверять спамерскую страницу на наличие обратной ссылки на свой блог. Видят, что ссылка на месте и не удаляют трекбек.

Примечание. Эту проверку не обязательно делать вручную. Автоматизировать эту работу можно с помощью плагина для WordPress - Trackback Validator Plugin.

Через несколько дней спамер кардинальным образом изменяет страницу. Например, превращает в дорвей. Все ссылки на блоги с нее естественно удаляются.
Читать дальше »

Опубликовано в PHP, WordPress | Комментарии (18) »

Ошибки Sape или безопасная продажа ссылок

3 августа, 2008

ошибка в sape

Совсем недавно DimoninG опубликовал статью об одной из уязвимостей Sape.

Вкратце ситуация такая. Если скрипт на вашем сайте не сможет соединиться с Sape, то вместо ссылок он выведет стандартное сообщение об ошибке, которое начинается со слов SAPE ERROR.

Если это увидит бот поисковика, то выводы будут однозначные.

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

Судите сами. При установке кода Sape в любом случае необходимо присвоить папке, в которой находится скрипт права на запись (777). Иначе скрипт sape.php не сможет создать файл links.db. Можно было бы создать в этой же папке debug.log и выводить ошибки в него.

Правда, не все так плохо.
Читать дальше »

Опубликовано в PHP, Заработок, Разное | Комментарии (13) »

Инструменты web разработчика. WAMPSERVER 2 – только новый софт

23 июня, 2008

Скриншот WAMPSERVER
Приятная новость для любителей пользоваться новыми версиями софта. В прошлом месяце обновился WAMPSERVER 2 – набор софта для web разработчиков. Фанатом новых версий я не являюсь :-) , поэтому попробовал WAMPSERVER только сейчас. До этого пользовался WAMP 1.7.3, о которой я уже рассказывал (статья «Установка и настройка WAMP5»).

Одним из основных достоинств WAMPSERVER является то, что он включает практически самые новые компоненты (Apache, PHP, MySQL, SQLitemanager, Phpmyadmin). Посмотреть их версии и скачать дистрибутив можно здесь.

Кроме того, в состав дистрибутива входит панель управления (открывается левым кликом по иконке в трее), которая обеспечивает удобное управление серверами и предоставляет быстрый доступ к Phpmyadmin и SQLitemanager.
Читать дальше »

Опубликовано в PHP, Web разработка | Комментарии (10) »