KENT-WEB サポートコーナー 過去ログ [ 0486 ]


記事No: 13366
投稿日: 2014/10/12(Sun) 12:07:24
タイトルlogin.cgiのパスワード数
ID情報: offmiya
投稿者: off-miya
URLhttp://office-miya.jp/login/

いつも大変お世話になっております。
シンプルなログイン方法が気に入ってlogin.cgiを使用させて頂こうと思ってます。
設定などの問題もなく当初の予定通り問題なく動いています。
一つぜいたくなリクエストですが、
ここで複数のパスワードは設定できないでしょうか?
例えばデフォルトである「0123」に加えて「9999」でも入れるように。
可能であればどなたかのお知恵を拝借できませんか?
宜しくお願い致します。


記事No: 13367
投稿日: 2014/10/12(Sun) 16:42:33
タイトルRe: login.cgiのパスワード数
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

たとえば、カンマで区切って
$cf{password} = '0123,9999';
のように指定するなら、

login.cgi32行目
if ($in{pw} ne $cf{password}) { error("認証できません"); }

foreach (split(/,/,$cf{password})) {
if ($in{pw} eq $_) { $ok = 1; last; }
}
if (! $ok) { error("認証できません"); }
のように修正したら、0123、9999どちらでも認証できます。


記事No: 13369
投稿日: 2014/10/12(Sun) 17:17:33
タイトルRe^2: login.cgiのパスワード数
ID情報: offmiya
投稿者: off-miya
URLhttp://office-miya.jp/login/

> たとえば、カンマで区切って
> $cf{password} = '0123,9999';
> のように指定するなら、
>
> login.cgi32行目
> if ($in{pw} ne $cf{password}) { error("認証できません"); }
> を
> foreach (split(/,/,$cf{password})) {
> if ($in{pw} eq $_) { $ok = 1; last; }
> }
> if (! $ok) { error("認証できません"); }
> のように修正したら、0123、9999どちらでも認証できます。

hirayama様
先日もお世話になりました。
いつもありがとうございます。

今回教えていただいた通りにしたのですが
以下のようなエラーが出てしまいました。

Software error:

Global symbol "$ok" requires explicit package name at login.cgi line 33.
Global symbol "$ok" requires explicit package name at login.cgi line 35.
Execution of login.cgi aborted due to compilation errors.

コピペ間違いかと思い、再度やっても同じでした。
どこが悪いのでしょう??お手数をおかけして申し訳ありません。


記事No: 13370
投稿日: 2014/10/12(Sun) 17:41:07
タイトルRe^3: login.cgiのパスワード数
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

失礼しました。
use strict; 宣言されているので、

foreach (split(/,/,$cf{password})) {
の前の行に
my $ok = 0;
と追加してください。


記事No: 13371
投稿日: 2014/10/12(Sun) 17:52:39
タイトルRe^4: login.cgiのパスワード数
ID情報: offmiya
投稿者: off-miya
URLhttp://office-miya.jp/login/

> 失礼しました。
> use strict; 宣言されているので、
>
> foreach (split(/,/,$cf{password})) {
> の前の行に
> my $ok = 0;
> と追加してください。

hirayama様
お教えいただいた通りにしたら完璧にできました。
いつも本当にありがとうございます!!


[検索ページ] [掲示板]