login_check($userid,$passwd) == true && $check == "ok"){
$in->set_cookie();
}
$h->header_html("login");
$in->login_form_check();
break;
case 'out': //ログアウト処理へ
$h->header_html("logout");
$out->logout_syori();
break;
default:
$h->header_html("login");
$in->user_login_form();//ログインフォーム
break;
endswitch;
$h->footer_html();
exit();
class Login{
//==================================================================================
//ログイン画面
//==================================================================================
function user_login_form($error ="",$userid =""){
//入力ミスで戻ってきたのじゃなければクッキー
if(!isset($error) || $error == ""){
global $cookie_name;
//クッキーがあるか調べる
if (isset($_COOKIE["$cookie_name"]) || $_COOKIE["$cookie_name"] ==""){
$cookie = $_COOKIE["$cookie_name"];
//クッキー
list($c_userid,$c_passwd) = split("<>", $cookie);
$userid = $c_userid;
$passwd = $c_passwd;
}
}
echo <<
ログイン
$error
ノブログID
パスワード
IDとパスワードを記憶する
HTML;
}
//==================================================================================
//ログイン処理
//==================================================================================
function login_form_check(){
//入力された値を入れる
$userid = $_POST['userid'];
$passwd = $_POST['passwd'];
if(!isset($userid) || $userid ==""){
//ユーザIDに値が入っているかチェック
$this->user_login_form("ノブログIDを入力してください");
exit;
}elseif(!isset($passwd) || $passwd ==""){
//パスワードのチェック
$error = "パスワードを入力してください";
$this->user_login_form($error,$userid);
exit;
}
//ユーザID,パスワードが正しいか照合
if($this->login_check($userid,$passwd)){
//正しければログイン
$_SESSION["session_id"] = $userid;
echo"ログインしました";
html::back_html("./noblog_main.php");
}else{
//入力された値が正しくなかった時の処理
$error = "ユーザIDまたはパスワードが間違っています";
$this->user_login_form($error,$userid);
}
}
//==================================================================================
//ログインチェック処理
//==================================================================================
function login_check($userid,$passwd){
$login_flag = false;
$con_id = sql_init::connect();
//ユーザID,パスワードの照合
$sql = "select userid passwd from user where userid = '$userid' AND passwd = '$passwd'";
$res = mysql_query($sql,$con_id);
$rows = mysql_num_rows($res);
if($rows != 0)
{
$login_flag = true;
}else{
$login_flag = false;
}
return $login_flag;
}
//=================================================================================
//クッキー
//=================================================================================
function set_cookie(){
$userid = $_POST['userid'];
$passwd = $_POST['passwd'];
global $cookie_name;
//クッキーに書き込む内容
$cook_val = array($userid,$passwd);
//配列を文字列に
$cookie_val =implode("<>", $cook_val);
//時間
$data =time()+30*24*3600;//30日間保存
//クッキーセット
setcookie($cookie_name,$cookie_val,$date);
}
}
class Logout{
function logout_syori(){
session_start();
session_unset();
session_destroy();
echo "ログアウトしました";
html::back_html("./nologin.php");
}
}
?>