СЛУЖБА ЗНАКОМСТВ: соединяем половинки cuttah (cutter@real.xakep.ru) Спецвыпуск Xakep, номер #028, стр. 028-060-5 С Божьей помощью твоя служба знакомств должна заработать. В принципе, в дальнейшем проблем возникать не должно. Единственное, что может напрягать, это постоянная проверка новых анкет. Для этого тебе понадобится частенько заходить в Интернет либо просто найти человека, которые возьмет эти обязанности на себя. Так что обдумай этот вопрос. РАЗБОР МОДУЛЕЙ СЛУЖБЫ ЗНАКОМСТВ А теперь посмотрим, какие же скрипты есть и кто за что отвечает. В общем, краткое описание их жизнедеятельности: add.cgi Отвечает за добавление новых анкет. Использует стандартный модуль CGI для обработки форм с файлами (ENCTYPE="multipart/form-data"). Также три моих модуля: func.pl, spec.pl и data.pl. При GET запросе он выводит обычную форму заполнения анкеты. При POST добавляет анкету. Перед этим он делает проверку на повторения запроса с одного IP, чекает размер картинки и, если все ОК, посылает SQL запрос (makeid из spec.pl) и выводит html файл об успешной регистрации. admin.cgi Администраторский скрипт. Инклудит 4 модуля: checkankets.pl, func.pl, spec.pl и data.pl. По умолчанию выводит окно с просьбой вести пароль. Сам пароль прописывается в скрипте. Находится он в переменной $pass и равен значению "secpass". Когда будешь ставить скрипты, не забудь поменять на другое значение, а то похакают. Кстати, именно на этом месте я поленился. Советую тебе немного дописать скрипт, чтобы добавить возможность изменения пароля через вэб. Для этого тебе просто придется выделить специальный файл под пароль и дописать пару функций в admin.cgi. anketa.cgi Отвечает за вывод анкет по типу ориентации (нормальная, би, гомо). Юзает четыре модуля: func.pl, search.pl, data.pl и spec.pl. Скрипт очень примитивный. Он просто проверяет входные значения в query string и передает их процедуре find из модуля search.pl. change.cgi Отвечает за изменение/удаление анкеты, просмотра внутренних сообщений, а также за отсылку паролей забывчивым пользователям. Использует пять модулей: CGI, func.pl, spec.pl, data.pl, message.pl. Довольно загруженный кодом скрипт, в нем содержится куча проверок, всяких выводов и т.д. Поэтому, по возможности, я расставлял свои комментарии. find.cgi Выполняет функции поиска анкет по различным критериям: тип знакомства, город, возраст, рост и т.д. Во всем остальном является полным аналогом скрипта anketa.cgi, за исключением передачи другого количества параметров процедуре find. И так же он использует четыре модуля: func.pl, search.pl, data.pl и spec.pl. sendme.cgi Отправка сообщений владельцу анкеты. Подключает четыре модуля: message.pl, func.pl, spec.pl и data.pl. Может отправлять как на почту, так и во внутренние сообщения. Надо добавить, что это довольно удобно, и почему-то не все службы знакомств предоставляют такую возможность. |