Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: разработка для Web > Скрипт авторизации


Автор: Гость_Narina 12.2.2004, 11:59
Помогите пожалуйста со скриптом авторизации!
Нужна самая простая формочка!
Спасибо заранее!!!

мой мейл narinochka@mail.ru

Автор: ElectricalStorm 12.2.2004, 12:23
уточните пожалуста что Вы хотите !



Автор: Narina S. 12.2.2004, 12:32
ElectricalStorm Мне нужно ограничить для входа на форум пользователей.
Т.е. прежде чем человек напишет сообщение на форуме, необходимо чтобы он прошел регистрацию.
В регистрационной форме он должде ввести свои данные, логин и пароль. После чего, пройдя регистрацию он получает по почте доступ к чтению и добавлению новых сообщений.

Автор: Narina S. 12.2.2004, 12:38
не в прямом смысле доступ по почте, а приходит письмо по мейл, подтверждающее что человек прошел активацию. а вот как это организовать?! ;(

Автор: ElectricalStorm 12.2.2004, 12:38
для этого вам нужно заполненые данные регистрации сохранить в файл или базу данных
куда вы хотите сохранять ?

(ИМХО в базу лучше )

Автор: Narina S. 12.2.2004, 12:47
ElectricalStorm Лучше в БД конечно. У нас MYSQL.

Автор: ElectricalStorm 12.2.2004, 13:15
с письмами все довольно просто используйте MIME::Lite

http://www.zeegee.com/code/perl/MIME-Lite/docs/

Автор: ElectricalStorm 12.2.2004, 13:28
что касается регистрации тоже просто
вот так это все пишется (не проверял но в любой книжке есть )

use CGI qw/standard/;

print <<HTML
.....
здесь форма регистрации
....
HTML
if (defined (param('login') && defined (param('password')) {
($resCode ) = insetRecord($dbh, param('login') , param('password') );
print "Error " unless ($resCode);
}


sub insetRecord($$$) {
my ($dbh, $login, $password) = @_;
my ($sql, $resCode, $csr) = ();

unless (defined ($dbh)) {
# какая-то обработка ошибок например
print "Error $! ";
}

($resCode, $login) = isValidLogin($login);
print "Error " unless ($code);

($resCode, $login) = isValidPassword($login);
print "Error " unless ($code);

$sql = "insert .... ";
$csr = $dbh->prepare($sql) or die $DBI::errstr;
$csr->execute() or die $DBI::errstr;

return 1;
}

P.S это не готовый скрипт а только одна из возможных реализаций такого рода задач




Автор: Narina S. 12.2.2004, 14:00
ElectricalStorm Cпасибки за информацию! Буду разбираться сидеть! ;)

Автор: ElectricalStorm 12.2.2004, 14:05
perldoc Вам в помощь ! smile.gif

www.perldoc.com

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)