データを書き換えたいのですが・・・
以下の方法で、CGIを書いたのですが、ユーザーIDを入れても、データベースを書き換えられません。
どこが問題なのか、教えて頂きたく質問しました。
*何分初心者で、見づらいと思いますが、宜しく御願いします。
★目的 ユーザIDを入れると、”hanteinasi”の人が”hanteiari”にデータベースに書き換えられる。
★データベース
○ユーザID:名前:メール:性別:年齢:(判定ありorなし):認証ID:
例)kk432 : 佐藤 : j@co.jp : 男 : 20 : hanteinasi : q1234 :
★CGI
#!/usr/local/bin/perl
require 'cgi-lib.pl';
&ReadParse(*form);
require 'jcode.pl';
&jcode'convert(*form, 'sjis');
open(ENQ,"+<enquete.dat") || die "File 'enquete.dat' Open Error.";
@add= <ENQ>;
$i=0;
chop @add;;
foreach (@add){
($userID, $name, $mail, $sex, $age, $hantei, $ninsyouID )=split(/:/, $_);
if( $form{'user'} eq $userID && $hantei eq "hanteinasi"){
$hantei= "hanteiari";
@add[$i]; = "$userID:$name:$mail:$sex:$age:$hantei:$ninsyouID:\n";
i++;
flock(ENQ, 2);
print ENQ @add[$i];
flock(ENQ, 8);
}
elsif($hantei eq "singuru" || $hantei eq "hanteinasi"){
@add[$i] = "$userID:$name:$mail:$sex:$age:$hantei:ninsyouID:\n";
i++;
flock(ENQ, 2);
print ENQ @add[$i];
flock(ENQ, 8);}}
close(ENQ);
# -----ここから出力 -----
print "Content-type:text/html\n\n";
print << "END_OF_HTML";
<HTML><HEAD><TITLE>登録完了</TITLE></HEAD>
<BODY><CENTER><FONT color="red">
登録完了
</FONT></CENTER></BODY></HTML>
END_OF_HTML}EOF