Архивы за месяц: мая 2008

PHP mail под Windows. Отправка почты из PHP скриптов

Владимир | | PHP, Web разработка.

В этой статье я хочу рассказать об отправке почты из php скриптов под Windows.

С точки зрения php программиста отправка почты выполняется с помощью стандартной функции mail().

И вот тут у многих начинающих разработчиков возникает проблема. Скрипт, прекрасно работающий на сервере хостера, выдает ошибки на локальном компьютере.

Обычно эти ошибки имеют примерно такое описание:
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in E:\www\simplemail\mailer.php on line ......
Читать дальше

Раскрашиваем блоки с кодом. PHP библиотеки и плагины для WordPress

Владимир | | Web дизайн, Web разработка, WordPress.

Подсветка синтаксиса

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

В первую очередь определим минимальные требования к таким библиотекам:

1) подсветка кода без лишних действий с вашей стороны, т.е. в идеале нужно указать только язык, подсветку для которого нужно включить, и выделить сам блок с кодом (обычно с помощью тегов <pre>);

2) нумерация строк кода (очень удобно ссылаться на эти номера в описании, да и посетителю будет легче ориентироваться).

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

Раскрутка сайта. Руководство по продвижению в DIGG

Владимир | | SEO, Разное.

Недавно SeoWriter опубликовал Pуководство по работе с Digg. Распространяется в pdf формате, скачать можно бесплатно 🙂 .

Тема, конечно, очень интересная особенно учитывая то количество посетителей, которое можно получить с этой социальной сети. Естественно, конкуренция там сумасшедшая.

Тем не менее, автор обещает, что если вы будете следовать его советам, то сможете загнать статью в топ с вероятностью 63%.

Не знаю, насколько это точная цифра, но в руководстве очень понравилось, что SeoWriter не стал ограничиваться общими советами, а написал подробный план мероприятий на 4 недели.

В общем, довольно интересное получилось руководство. Советую почитать.

Блог на WordPress. Есть ли надежная защита от спама?

Владимир | | WordPress, Разное.

Akismet logo
С недавних пор для борьбы со спамом я использую службу Akismet.

И должен сказать, что работает она не плохо. Количество спама существенно уменьшилось. Если до установки в день приходило 10-20 спамерских трекбеков и около 10 бессмысленных комментариев, явно добавленных вручную, то через пару недель после установки Akismet спамеры похоже обо мне забыли (как бы не на каркать 🙂 ).

Т.е. спам появляется, но гораздо реже. То количество, которое раньше появлялось за день сейчас приходит за недели 2-3, и оседает в спам-фильтре. Конечно, туда попадают и нормальные комментарии (за 2 месяца – штук пять). Поэтому списки спама приходится регулярно просматривать.

Но я не об этом. На днях заметил одну интересную особенность Akismet. Похоже, кто-то просто игрался с формой добавления комментариев и оставил такой коммент:
Имя: m
eMail: g@mail.ru (вряд ли он настоящий)
URL: отсутствует
Текст: <code></code><em><strong> (т.к. текст состоит только из тегов, комментарий выглядит пустым).

И Akismet спокойно пропустил этот комментарий.

Я понимаю, что отнести его к спаму сложно, т.к. отсутствует ссылка, т.е. спамер не получит никакой выгоды.

Но с другой стороны в FAQ Akismet написано.

Цитирую:

When a new comment, trackback, or pingback comes to your blog it is submitted to the Akismet web service which runs hundreds of tests on the comment and returns a thumbs up or thumbs down.

Перевод:

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

Интересно, какие именно тесты из этих сотен прошел комментарий?

Очень похоже на то, что Akismet просто проверяет, есть ли ссылки и только после этого запускает остальные тесты.

В общем-то, логика здесь есть. Нет ссылок – нет выгоды спамеру, нет выгоды – значит это не спам.

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

А что вы думаете по этому поводу? Может кто-то работал с другими службами?

Как создать облако тегов для своего сайта на PHP

Владимир | | CodeIgniter, HTML, PHP, Web разработка.

Облако тегов

В этой статье я расскажу и, естественно, покажу пример создания облака тегов для сайта (блога). Основные инструменты – PHP и фреймворк CodeIgniter (подойдет любой другой).

Но, прежде всего, хочу поблагодарить Delchyve за идею.

Итак, переходим к делу.

Вы, конечно, знаете, что облако тегов используется на многих сайтах (в основном это блоги) как элемент навигации. По-сути, облако тегов – это набор ссылок с ключевыми словами, рядом с которыми обычно пишут количество постов, которые относятся к данному тегу.

Чтобы сфокусировать внимание посетителя на наиболее актуальных темах, размер шрифта тегов в облаке меняют в зависимости от количества постов, которые к нему относятся.

Если ваш сайт (блог) использует какую-нибудь CMS, например, WordPress, Joomla и т.п., то вы без труда найдете плагины, которые сами создадут облако тегов на основе ваших данных, а вам останется только разместить его в шаблоне сайта.

Но мы рассмотрим ситуацию, когда сайт пишется «с нуля» и вам нужно сформировать облако ручками 🙂 .
Читать дальше

PHP скрипт. Simple URL Checker — запуск проверок по расписанию

Владимир | | CodeIgniter, PHP, Web разработка.

Simple URL Checker - CRON
Приветствую всех!

Это заключительная статья о разработке web приложения, выполняющего проверку URL.

Примечание. Ссылки на предыдущие статьи этого цикла вы найдете здесь.

На данный момент у нас уже есть работоспособное приложение. Но запускать проверки мы можем только с помощью web интерфейса.

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

И вот здесь возникает проблема. Мы не можем из командной строки вызвать метод ping, т.к. для этого нужно создать экземпляр класса контроллера (Main) и заодно инициализировать ядро фреймворка.

Вообще при работе с CodeIgniter все запросы отправляются скрипту index.php, а уже он в зависимости от полученных параметров инициализирует объекты и вызывает нужные методы.

Проблему можно решить несколькими способами.
Читать дальше

PHP скрипт. Simple URL Checker — создание представлений

Владимир | | CodeIgniter, CSS, PHP, Web разработка.

Simple Url Checker - views
Приветствую!

Сегодня мы продолжаем разработку web приложения, выполняющего проверку URL. На данном этапе чтобы получить работоспособное приложение нам осталось только создать представления.

Примечание. Ссылки на предыдущие статьи этого цикла вы найдете здесь.

Наше приложение содержит всего две страницы. Главную со сведениями обо всех выполненных проверках, и страницу с подробной информацией по конкретному URL. В принципе, нам достаточно двух представлений. Но заголовок и «хвостовик» страницы повторяются, поэтому мы создадим для них отдельные представления.

Все файлы представлений должны находиться в папке application/views/.

Рассмотрим их подробнее.
Читать дальше

PHP скрипт. Simple URL checker — выполнение проверок (cURL)

Владимир | | PHP, Web разработка.

Simple URL checker - cURL
Приветствую всех!

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

Чтобы немного облегчить себе жизнь, проверки мы будем выполнять с помощью библиотеки cURL.

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

Теперь нам нужно подключить эту библиотеку к PHP. Для этого в файле php.ini нужно убрать «;» в начале строки extension=php_curl.dll. После этого в сведениях, которые возвращает функция phpinfo() появится раздел curl и в нем параметр — cURL support: enabled.

Библиотека подключена и можно начинать ее использовать.

Для начала приведу небольшой пример, иллюстрирующий основные принципы работы с библиотекой на PHP.
Читать дальше