Жаль, если ваше изучение концепции исключений закончится чтением соответствующего раздела официальной документации по вашему языку.
Изучив синтаксис конструкции try{...}catch(Exception $e){...}, узнав о возможности создавать собственные классы исключений, наследуя их от класса Exception и поверхностно осознав мощь оказавшегося в ваших руках механизма, дальше вы можете пойти по одному из двух путей:
Начать тут же использовать исключения. Скажем, прикручивать их к системе, в которой они никогда не использовались. Или приколачивать их к проекту, в котором ООП и не пахнет. Или, что самое ужасное, пытаться использовать их повсеместно, особенно там, где это не нужно.
Попытаться понять, где их применять, как делать это правильно, и зачем они нужны.
Если вдруг невинные письма с вашего сайта начали повально попадать в spam-боксы почтовиков, это может означать, что IP вашего сервера попал в email-блеклист. Вероятность этого возрастает, если у вас не свой собственный сервер. Примерный сценарий попадения в блеклист таков:
Юрий Иванович, директор небольшой студии танцев, имеет сайт «по соседству» с вами (читай, на том же сервере). В один прекрасный момент, Юрий Иванович узнает о чудесных перспективах email-маркетинга и рассылает пачку из двадцати тысяч писем с однотипной рекламой своей студии.
Или же, Вася Попов, не пользующийся антивирусом, но любящий старые версии Total Comander, апдейтит свою домашнюю страничку по FTP. В один прекрасный момент, спящий ранее троян, похищает пароли к Васиному FTP (которые лежат незащищенные в папке Total Comander). На следующий день, Васина домашня страничка уже отсылает десятитысячное предложение о покупке виагры.
Или же, Петя Твердохлебов, который имеет рядом сайт на Друпале версии 5.0 и думает что обновления это «от лукавого», в очередной солнечный день ловит XSS уязвимость и начинает, сам не зная того, отсылать рекламу потенциальным покупателям penis-enlargment pills.
Ранее здесь была представлена статья о том как сделать вертикальный текст картинками, генерируемыми php.
Теперь я хочу вам рассказать о том как сделать поставленную задачу без картинок, флеш и js, только средствами html и css. К тому же стало возможно сделать текст под произвольным углом. В конце статьи есть готовый пример.
Есть у меня небольшой проект с user-generated content-ом. Встала задача сделать код кнопки с ссылкой на страничку пользователя, для интеграции в пользовательские блоги и сайты. Но делать скучные кнопки, как у большинства конкурентов, не хотелось. Хотелось, на равне с простыми кнопками и ссылками, сделать что-то особенное, jQuery-евское, с аяксом и анимацией :).
Суть простая: пользователь размещает у себя на сайте скрипт, который динамически вставляет кнопку. При нажатии на кнопку всплывает окошко с подгружённой пользовательской страничкой с нашего ресурса.
Проблемы очевидны:
Необходимо определить, используется ли jQuery и нужный плагин на сайте пользователя. Если нет, то обоих динамически подгрузить. Делать отдельно коды для тех кто использует jQuery на своем сайте и для тех кто нет — не комильфо, а тем более подгружать при любом раскладе (могут возникнуть глюки, особенно у плагинов).
Пережатый jQuery весит около 60 кБ, и в случае подкачки может не успеть полностью загрузиться и инициализироваться до исполнения кода.
В качестве вкусности я использовал плагин fancybox. Он позволяет не только отображать фотографии с lightbox-эффектом, но и любой другой контент в iframe.
Для многих из нас настает тот долгожданный день, когда аудитория сайта начинает стремительно расти. Каждое утро мы, затая дыхание, смотрим на графики google analitycs и расплываемся в улыбке, когда взят рубеж в очередную тысячу посетителей в день. Как правило, рост посещаемости не совпадает с ростом технической базы и сайт начинает тормозить. Тут в игру вступает сисадмин...
У любого проекта всегда есть что оптимизировать: можно почитать советы по оптимизации на webo.in, установить eaccelerator, memcache, проиндексировать поисковые поля в базе данных. Я предполагаю, что все это уже проделано, а сайт по прежнему тормозит.
Многие из нас сталкивались с всплывающими окнами, когда при этом постепенно потухает фон. Взгляд пользователя невольно фокусируется только на той части экрана, где что-то требуется от этого самого пользователя. Достаточно полезно, не правда ли?
Конечно же, не претендую на какую-то новизну, и данная заметка будет больше полезна начинающим с jQuery (коим и сам являюсь), чем людям, имеющим существенный опыт с данным javascript фреймворком.
Случается, что сайты перестают работать. Причины могут быть самые разные: в датацентре «упал» канал, сервер вырубился, кто-то что-то намудрил с базой или файлами на сервере, сисадмин неудачно обновил ПО или переносил аккаунты. Или кое-кто забыл оплатить хостинг.
В большинстве случаев такая ситуация нежелательна, а устранить ее надо как можно скорее. Для этого нужно как можно скорее узнать о случившемся. Но как? Для себя и для наших клиентов мы используем сервисы мониторинга сайтов. О них я сегодня и расскажу.