[問題] exists的用法
又卡住了....只要上來求助前輩了
我想要用perl CGI 寫一個使用戶登入的網頁
程式會先檢查檔案裡裡有沒有這個帳號存在,
有的話就會出現該用戶的email,沒有的話程式就會說"該用戶不存在"
寫了半天網頁都一直出現email,也不管有沒有哪個ID存在
希望前輩們幫我看看我是哪裡寫錯,謝謝大家
#!/usr/bin/perl
#--------------------------------------------------------
#Login page for userID and password
#if userID already exist or missing input, show error msg
#otherwise, show user's email address
#--------------------------------------------------------
use CGI qw(:standard -debug);
use CGI::Carp qw(fatalsToBrowser);
#get input
$userid= param ("userid");
$password= param ("password");
$file="hw6-22.out";
open(IN,$file) || die "can't read $file";
@all = <IN> ;
close(IN);
chomp @all;
#checking for existing userID
%all=();
foreach (@all) {
($userid, $password, $email) = split(/,/,$_);
$all{$userid} =$password;
}
if (exists $all{$userid}) {
print header();
print start_html(-title=>"Existing ID");
print h2("Your email address:");
print p("$email");
exit;
}
# check for missing input
if ($userid eq "") { push(@missing,"User ID"); }
if ($password eq "") {push (@missing, "Password");}
$missing= join(", ",@missing);
if ($missing) {
print header();
print start_html(-title=>"missing input");
print h2("Incomplete Input");
print p("You did not enter <b>$missing</b>");
print end_html();
exit;
}
else
{
print header();
print start_html(-title=>"Not exist");
print p("<b>The UserId does not exist </b>");
print end_html();
exit;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 149.159.132.73
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章