Это скорее фича, чем бага

Столкнулся с непонятной мне ошибкой или, наоборот, фишкой в браузере FireFox. По каким-то странным причинам этот браузер стал мне рисовать рамки у таблиц, хотя все они обнулены в reset.css (от Эрика Мейера). Стал копаться и вот до чего дошёл.

Запрет выполнения РНР — скриптов в папке

На многих сайтах пользователю дается возможность загружать файлы. Это в большинстве своём — слабое место системы. Так как многие программисты уделяют мало времени проверке данных и безопасности приложений, хакеру не составит труда найти папку с правами 777 (обычно uploads, media) и через ошибки залить туда скрипт вместо ожидаемой картинки. Как это сделать — тема другой статьи.

Sypex Dumper 2

Обновился Sypex Dumper — PHP-скрипт, с помощью которого можно просто и быстро создать резервную копию (бекап, дамп) базы данных MySQL, а также восстановить в случае необходимости базу данных из резервной копии.

Отдать PDF на скачку

При проектировании одного проекта столкнулся с проблемой некоторых браузеров открывать PDF-документ непосредственно в окне браузера. Это чревато тем, что вы вообще ничего никогда не сможете просмотреть, либо при сохранении открытого файла получите «битый» документ.

Было принято решение отдавать файлы скриптом. Чтобы не мудрить с движком — подпилил все напильником через mod_rewrite.

PHP singleton

Singleton Pattern (single — единственный [англ.] ton — мода, стиль [англ.]) — один из наиболее известных шаблонов проектирования. Почти в любой объктно-ориентированной программе обычно существует один-два объекта, которые инициализируются в начале, и используются на всем протяжении работы приложения. Нет нужды каждый раз создавать объект класса, достаточно создать один экземпляр класса, в начале работы программы, и пользоваться им.

Установка standalone версии Akismet для сайта

Akismet — веб-сервис от создателей WordPress, анализирующий качество содержимого, отправляемого на веб-сайты. Сюда включаются: комментарии, сообщения, отправляемые через контакт-формы, блоги, сообщения на форумах и прочее.

Генерация XLS на сайте

Случайно сохранил обычный HTML-файл с расширением .XLS(MS Excel) и, не обратив на то внимание, кликнул на него. Какого было мое удивление, когда MS Excel принял, как родного, созданный таким способом файл.

jQuery FancyBox – отличная фотогалерея

Сегодня расскажу о еще одной великолепной галерее – jQuery FancyBox. Тем более, что в последней версии фотогалереи LightBox разработчики вырезали поддержку IE6 (с чем я в общем полностью согласен – надо жалеть разработчиков и обновлять программное обеспечение). Но поскольку не всем это понравится, я обещал подробно рассказать о какой-нибудь другой фотогалерее для jQuery, что с удовольствием …

ПодробнееjQuery FancyBox – отличная фотогалерея

Почему так важен DOCTYPE

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

Вы написали правильный стандартный XHTML код и стандартный CSS. Вы воспользовались стандартной спецификацией для работы с DOM (Document Object Model), чтобы управлять динамическими элементами на странице. И все-таки, в броузерах, которые казалось бы сделаны с соблюдением именно этих стандартов, ваш сайт не работает. Скорей всего, ошибка кроется в неправильном заголовке DOCTYPE.

Эта небольшая статья расскажет вам о заголовках DOCTYPE, которые работают, а также объяснит практическое и теоретическое значение этого, казалось бы отвлеченного от реальности, тега.