Myページ
ホーム
コミュニティの人々
ソフトウェア
技術紹介
適用分野
Tyzohとは
ご意見お問い合わせ

V.S.A. III

[Secure-SBM:010] データベース管理処理 (3)

こんにちは,五十嵐です.今回は registuser を作成します.が,その前に...
なんだか,サイドのメニューの部分がよくわからなくて,寂しいので,色を付けてみました.

root/static/css/style.css
@@ -124,8 +124,11 @@
 
 #left {
        float: left;
-       width: 200px;
+       width: 198px;
+       margin-left: 2px;
        overflow: hidden;
+       color: #000000;
+       background-color: #ccffff;
 }
 
 #center {
@@ -137,8 +140,11 @@
 
 #right {
        float: right;
-       width: 200px;
+       width: 198px;
+       margin-right: 2px;
        overflow: hidden;
+       color: #000000;
+       background-color: #ccffff;
 }
 
 .indent {

メニューのマージンもちょっと調整.どうも,やらなければいけないことを後回しにして,いろいろ遊んでしまいます(笑) もうちょっと集中せねば...

 

さて,registuser.登録結果を表示させるために resultmessage というハッシュに結果を格納します.これを表示させるために listusers_center.tt に resultmessage を表示させるための設定を追加します.後述しますが,registuser は,最終的に listusers の処理を使用して最終結果を表示します.

listusers_center.tt の変更
@@ -1,4 +1,11 @@
 <div id="listuser_center">
+[% IF resultmessage -%]
+<div id="resultmessage">
+<h1>結果</h1>
+<div id="resultmessage_contents">[% resultmessage %]</div>
+<hr />
+</div>
+[% END -%]
 <h1>ユーザリスト</h1>
 
 <button id="searchuser_button">検索</button>


パスワードを格納する際に SHA-1 を使用します.Digest::SHA を使用しますが,全体で使用しますので,lib/SecureSBM.pm で use 宣言しておきます.

lib/SecureSBM.pm
@@ -18,6 +18,8 @@
                StackTrace
                /;
 
+use Digest::SHA;
+
 our $VERSION = '0.01';
 
 #


最後に lib/SecureSBM/Controller/Admin.pm に registuser を追加します.ポイントのみ掲載します.

lib/SecureSBM/Controller/Admin.pm の変更
sub registuser : Local {
(...略...)
        # form からのパラメータの取得
        foreach my $k ( qw/user_email user_name user_surname/ ){
                $data{$k} = $c->req->param( $k );
        }
受け取ったデータを %data に格納します.後に DB で create そする場合にそのままデータとして渡します.
        $data{'user_password'} = 
            Digest::SHA::sha1_hex( $c->req->param( 'user_password' ) );
パスワードは,Digest::SHA::sha1_hex()を用いてハッシュ化して格納します.
       $data{user_email} =~ tr/A-Z/a-z/;
email の文字列は,すべて小文字で格納します.大文字小文字の区別はしません.
(...略...)
        if( $dg = $c->model('SecureSBMDB::Role')
                                  ->find( {role_name => $defaultgroup} ) ){
find で指定されたグループが存在するかどうかを確認します.存在しなければ,"public" に設定してしまいます.
                $dg = $c->model('SecureSBMDB::Role')
                                 ->find_or_create( {role_name => 'public'} );
(...略...)
email のアドレスが既登録かどうかを確認します.
                if( $c->model('SecureSBMDB::User')
                                  ->find({user_email => $useremail}) ){
                # 新規であれば登録 (create)
                }elsif( $user = $c->model('SecureSBMDB::User')
                                     ->create(\%data) ){
UserRole にも関連付けを行います.
                        if( $c->model('SecureSBMDB::UserRole')
                                   ->create(\%user_roles) ){
                        成功
                       }else{
                         失敗
                       }

                # 登録失敗
                }else{
                        $resultmessage .= "<p>ユーザ(E-mail)["
                                . $useremail
                                . "]の登録に失敗しました.</p>";
                }
        }
最後に今までのメッセージを格納し,
        $c->stash->{resultmessage} = $resultmessage;
listusers の処理に渡します.

        $c->forward('listusers');

} # end of registuser()

これで,registuser が終わりました.次は,deleteuser です.

2007/03/22 記


参考:

Keyword: Perl Catalyst Secure-SBM SSBM セキュア・ソーシャル・ブックマーク

 

カテゴリ:SBM , 開発日記

タグ:

いかちょー (2007-05-31 15:26) | コメント(0)| トラックバック(10)

トラックバック(10)

トラックバックURL:

Cla. - Cla. (2011年2月21日 17:31)

Cla. 続きを読む

Percocet causing hiccoughs. - Percocet causing hiccoughs. (2011年2月22日 17:20)

Percocet causing hiccoughs. 続きを読む

Percocet and dosage. - Percocet and dosage. (2011年2月23日 02:15)

Percocet and dosage. 続きを読む

Buy percocet. - Buy percocet. (2011年2月23日 12:53)

Buy percocet 2.5 325 online. 続きを読む

Ampicillin for dog. - Ampicillin for dog. (2011年2月24日 01:25)

Ampicillin for dog. 続きを読む

Adderall 10 mg. - Adderall xr 10 mg. (2011年2月25日 00:41)

Adderall 100 mg. 10 mg adderall. 続きを読む

Oxycodone 5-325 mg. - Oxycodone 5-325 mg. (2011年2月25日 17:31)

Oxycodone 5-325 mg. 続きを読む

Adderall and impulsivity. - Adderall and impulsivity. (2011年2月26日 02:45)

Adderall and impulsivity. 続きを読む

80mg of adderall. - 80mg of adderall. (2011年2月26日 13:13)

80mg of adderall. 続きを読む

Generic oxycontin identification. - Generic oxycontin identification. (2011年2月28日 01:58)

Generic oxycontin identification. Pill identification generic oxycontin oxyco... 続きを読む

コメント

コメントを投稿

名前

電子メール

URL

ログイン情報を記憶

コメント

プロフィール

いかちょー

いかちょーこと五十嵐智です。
情報セキュリティ分野に興味があります。
一応、CISSP ホルダー。

SF者です。どうぞよろしく。

プロフィール詳細 (Google プロフィール)

RSSフィード

コミュニティの人々 | ソフトウェア | 技術紹介 | 適用分野 | Tyzohとは | ご意見お問い合わせ

Copyright (C) 2004-2011 Nihon Unisys, Ltd. All Rights Reserved.
Powered by Movable Type Open Source