📄 user.pm
字号:
package astercon::database::user;use Carp qw(carp croak);use strict;#------------------------------------# for user website#------------------------------------sub user_auth{my $self = shift;my ($user,$passwd) = @_;my $sth = $self->{dbh}->prepare("SELECT * FROM Billing_account WHERE (Accountcode = ".$self->{dbh}->quote($user). " OR Username = ".$self->{dbh}->quote($user)." OR Callerid = ".$self->{dbh}->quote($user). ") AND Secret = ".$self->{dbh}->quote($passwd)." AND Status = 1"); $sth->execute or croak($self->{dbh}->errstr);my $row = $sth->fetchrow_hashref(); $sth->finish;return($row);}sub user_create_session{my $self = shift;my $Accountcode = shift;my $Secret = shift;my $user_session = shift;my $lease = time; $self->{dbh}->do("UPDATE Billing_account SET session_id=".$self->{dbh}->quote($user_session). ",session_log=now(),session_lease=$lease WHERE Accountcode = ".$self->{dbh}->quote($Accountcode). " AND Secret = ".$self->{dbh}->quote($Secret));return();}sub user_session_keep{my $self = shift;my $user_session = shift;my $session_lease = shift;my $current_time = time; $self->{dbh}->do("UPDATE Billing_account SET session_id = '' WHERE session_id != '' AND session_lease + ". $session_lease." <= ".$current_time);my $sth = $self->{dbh}->prepare("SELECT * FROM Billing_account WHERE session_id = ".$self->{dbh}->quote($user_session). " AND session_lease + $session_lease >= ".$current_time); $sth->execute or croak($self->{dbh}->errstr);my $row = $sth->fetchrow_hashref(); $sth->finish;my $userinfo; if ($row->{'Accountcode'} ne '') { #鎵惧埌鍖归厤鐨
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -