CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2003 ГОД

ICQ без Аськи

Александр «ALExorON» ОНИЩУК xakepa_in@ukr.net

Здраствуйте, уважаемые читатели. Сегодня мы рассмотрим стандартную функцию из состава PHP четвертой версии для отправки писем —mail() — на примере организации обмена сообщениями через ICQ.

Как мы сможем эту функцию использовать? Действительно, «рыть» будем под ICQ. А так как эта функция многофункциональна, мы сегодня попытаемся «расширить общительность», а точнее, заставим ее посылать сообщения ICQ-пользователям, не прибегая к помощи самой тети Аси, через web-интерфейс с помощью обычных e-mail. У каждого пользователя ICQ по сути есть некий почтовый ящик формата ICQ UIN@pager.mirabilis.com, где вместо ICQ UIN нужно вставить только номер своего друга или подруги. Такой почтовый адрес мы и будем использовать для пересылки сообщений. Я так когда-то (и сейчас при необходимости) посылал сообщения своим друзьям — все нормально работает, как видите, доселе бодрствую. Поэтому приступим. Я полагаю, что связка Апач+РНР4+MySQL у вас настроена и работает, в противном случае смотрите соответствующие статьи Артема Шманцырева (см. цикл «Сервер племени апачей», материалы из №№38 (209), 40 (211)). Замечу только, что для работы функции mail() необходимо при установке РНР указать сервер электронной почты — иначе ничего работать не будет.

Возможность автоматической посылки e-mail по Сети, минуя использование внешних программ — одно из самых мощных средств РНР, эта функция встроена в сам язык. Синтаксис функции отправки письма такой:

Функция mail() посылает сообщение с телом $msg (это может быть и многострочная строка, т.е. переменная, содержащая в себе несколько строк, разделенных символом перевода строки (в нашем случае это \n и \r)) по адресу $to. Можно также задать адреса нескольких получателей, разделив их адреса пробелами в параметре $to. Например:

Можно также все адреса задать где-то в одном месте (переменной, константе, массиве), а потом вставлять по мере необходимости. Но, здесь можно попасться еще вот на чем: русских и украинских кодировок в мире существует множество. Поэтому от того, насколько правильно вы перекодируете письмо, зависит, прочтет ли его получатель. Впрочем, «универсально правильное» решение существует. Мы сделаем по-своему: будем передавать функции mail() только адрес получателя и текст письма, а заголовок и тему будем печатать в самом сообщении. Например:

Видите новую строку —Content-type? Она указывает кодировку windows-1251. Пустая строка необходима, чтобы почтовая программа смогла правильно разобрать письмо в целом и правильно его перекодировать.

Теперь от теории перейдем непосредственно к самой программе. Назовем ее Анонимный пейджер. Во-первых, программка будет выводить некую форму, в которой нужно ввести свое имя — ведь должен же ваш друг знать, от кого пришло сообщение, не правда ли? Там же будем вводить сам номер Аськи и само сообщение, для чего прилепим где-то рядом кнопки Отправить и Очистить. Теперь воспользуемся знакомой функцией mail(). Ее синтаксис в нашем случае будет таким:

Создаем файл pager.php, открываем и... сохраняем следующее:

Все, с программкой закончили. Надеюсь, все понятно. Если нет, то присмотритесь к комментариям в тексте программы. Теперь надо создать файл pager.html следующей структуры:

Итак, нам осталось создать последний файлик —thank.html:

Набрали, все сохранили? Теперь скопируйте эти три файла в директорию домашнего сервера или сервера в Сети. Все! Конечно, программку можно было сделать еще универсальнее, но оставляю это удовольствие для вас.

До следующей встречи!

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov