Архив рассылки -программирование на PHP




Чего не хватает? Любой следователь...


Чего не хватает? Любой следователь вам без запинки ответит, что нам необходимо узнать самого нарушителя спокойствия. Правильно. Это единственное, что нам недостает.

Мы уже позаботились об этом, помните? Мы вставили в html-сообщение об ошибке просьбу описать ситуацию, при которой возникла эта самая ошибка. Хорошо. Но не каждый посетитель захочет нам отписать такое письмо, это во-первых. А во-вторых, уж точно не станет писать нам письмо, если он сознательно пытается нанести урон нашему сайту, или просто прощупывает сайт на предмет "дыр".

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

Получить IP посетителя так же просто, как и URL: адрес содержится в переменной окружения $REMOTE_ADDR.

Уж простите мне мое занудство, но я предпочитаю определить это в отдельную функцию.

function remote_ip() { global $REMOTE_ADDR; return($REMOTE_ADDR); }

Почему я поступаю так "неразумно"? Дело в том, что запрашивать эту информацию можно из разных мест скрипта. А что, если потребуется присовокупить к адресу еще какую-то информацию? Или произвести его регистрацию в логах? А есть добавить проверку на наличие прокси-сервера и попытаться получить реальный IP-адрес? В общем, может произойти все, что угодно, и необходимо забронировать себе удобное расширение возможностей в любом направлении. Если вы не догадались, то дату и время я заключил в отдельные функции по той же причине: нам не составит труда заменить разделители разрядов даты и времени с точек и двоеточий на слеши или что-то иное. Хоть на слова.

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

Вот, мы и натыкаемся на первую конструкцию типа цикл. Не думаю, что следует останавливаться на подробном объяснении цикла for: этот вид цикла существует во всех языках, начиная с Бейсика, и называется везде так же.

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









Начало    Назад    Вперед




Книжный магазин