Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
$savedLogin = $cgi->param('login');
$savedPassword = $cgi->param('password');
# ищем сессию для заявленного логина
($sSessId, $sPassword) = $dbh->selectrow_array('
SELECT id, password FROM sessions WHERE login=?
', undef, $savedLogin);
# если не нашли – повторный запрос авторизации
if(!$sSessId) { &doLogon('Failed'); }
# если сессия есть, но пароль не соответствует введенному, повторный запрос авторизации
if($sPassword ne $savedPassword) { &doLogon('Wrong'); }
# Если все нормально – сохраняем идентификатор сессии в cookie
$cookie = $cgi->cookie(-name => 'sessid', -value => $sSessId);
print $cgi->header(-cookie => $cookie);
print 'Авторизация выполнена успешно.';
print " <A href='adsl.cgi'>Продолжить...</A>";
exit;
}
# action не имеет значения, пытаемся извлечь из cookie идентификатор сессии
$sessId = $cgi->cookie('sessid');
# Если безуспешно – уходим на авторизацию
if(!$sessId) { &doLogon('First'); }
# Если sessId есть, пытаемся получить пользователя этой сессии
($sLogin) = $dbh->selectrow_array('
SELECT login FROM sessions WHERE id=?;
', undef, $sessId);
# Если удачно – открываем сессию, иначе – на авторизацию
if($sLogin) {
$session = My::Insite->SessOpen($dbh, $sessId);
} else { &doLogon('Fialed'); }
# Выбираем из БД и выводим на экран список модулей
print $cgi->header;