| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Тайлер 19.07.2002 01:27
$time[^date::now[]]
$week_second[^eval(
($time.weekday * 86400) +
($time.hour * 3600) +
($time.minute * 60) +
$time.second
)]
$keys[^table::load[session_keys.dat]]
^if(def $cookie:user_id){
^keys.menu{
^if($keys.key eq $cookie:user_id){
^if($keys.ip eq $env:REMOTE_ADDR){
^if(^eval($week_second - $keys.time) < 900){
$auth[ok]
}
}
}
}
}
^if($auth ne ok){
$users[^table::load[users.dat]]
^users.menu{
^if($users.login eq $form:login && $users.password eq $form:password){
$auth[ok]
$i[32]
$abc[0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz]
^while($i >= 0){
$key[$key^abc.mid(^math:random(61);1)]
$i[^eval($i-1)]
}
$cookie:user_id[
$.value[$key]
$.expires[session]
]
^keys.append{$env:REMOTE_ADDR $key $week_second}
^keys.save[session_keys.dat]
}
}
}