Кто там?! Whois-клиент на php Никита Кислицин Xakep, номер #062, стр. 062-122-2 Вывод формы echo "<form action=\"\" method=get> Query: <input type=text name=query value=$query><br> <input type=submit>"; if(isset($query)) { $data = WhoisQuery("whois.ripe.net", $query); echo "<pre>".$data."</pre>"; } Обрати внимание на следующую деталь. Вывод нашей функции выделен тегами <pre> - это указывает на то, что информация должна обрабатываться как текстовая. Тут, прежде всего, имеется в виду шрифт Courier и символ '\n', переводящий строку. Впрочем, никто не мешает написать дополнительную функцию, которая будет красиво форматировать данные. Например, выделять имена узлов красненьким, адреса - зелененьким, а имена - синеньким цветом. Но скажи, тебе оно надо? :) Можно также добавить в систему возможность работы с несколькими Whois-серверами, более того, можно, в зависимости от зоны введенного домена, работать с различными Whois-серверами. Но я решил предоставить тебе возможность самому реализовать все эти функции, если, конечно, тебе это необходимо. А вообще, написанная программа была лишь неплохим учебным пособием. Так что, при наличии фантазии, ты можешь сделать из нее все что угодно :). Добавлю только, что все описанные в этой статье документы и программы, а также куча другой полезной информации, ты можешь найти на CD либо на сайте www.ired.ru. Как работать с прокси-сервером? Мне приходит много писем от читателей, причем очень часто они просят рассказать о том, как работать с HTTP-соединениями через proxy-сервер. Некоторые даже просят прислать ссылку на класс, о котором я где-то вскользь упоминал :). Надо заметить, мне не очень радостно получать такие письма - ты уже должен был сам научиться писать эту ерунду. Но все равно помогу. Мы напишем свой класс. Поскольку с базовыми принципами ООП ты уже знаком и с сокетами работать умеешь, непонятки возникнуть не должны. Поехали. Прежде всего определим два внешних свойства нашего будущего класса: адрес прокси и порт, на котором он висит. Затем реализуем метод httpOpen, открывающий http-соединение с сервером через прокси-сервер. Собственно, сам код с подробными комментариями смотри на врезке, а мне же остается только поздравить всех особей мужского пола с праздником - берегите, друзья, отечество! Одно оно у нас такое :). class phtt var $proxy=""; var $proxy_p=0; function httpOpen($host, $path, $port=80) { /* Если адрес прокси-сервера не определен */ if(empty($this->proxy)) { $connect2 = $host; $connectPost = $port; } else { $connect2 = $this->proxy; $connectPort = $this->proxy_p; } /* Составляем полный url документа */ $url = "http://".$host.":".$port.$path; $query = "GET $url HTTP/1.0\r\n". "Host: $host:$port\r\n". "User-agent: Xakep\r\n". "\r\n"; /* Подключаемся к узлу */ |