[PHP-users 14812]Re: formのaction=postを指定しているのにgetにかわってしまうトラブル

naruse @ daikodenshi.co.jp naruse @ daikodenshi.co.jp
2003年 4月 23日 (水) 13:41:24 JST


成瀬です。

会員登録フォームから入力された値をPostgresにinsertしようとしており、insertがエラ
ーになった場合に
自分宛てに$HTTP_POST_VARSをメール送信してエラーをトラップしております。
エラーの発生率は一週間くらい様子をみている範囲では3%位です。
携帯のパケット削減ですが、調査したところ携帯のproxyサーバのIPでしたのと、PCで
も発生して
いるためまた違う原因ではと考えています。

ソースを一部抜粋しました。
基本的に登録確認フォームから登録用phpにPOSTしてinsertを発行するような流れにして
おります。
入力値のエラーチェックは登録確認フォームのphpにて行っているので入力値が空の場合
はregist.php
は実行できないようにしております。

登録確認フォームの抜粋
<HTML>
<BODY>
会員登録
<form action="./regist.php" method="POST">
確認画面<br>
<input type="hidden" name="kanji_name"   value="てすと1">
<input type="hidden" name="kana_name"         value="てすと1">
<input type="submit" value="登録完了"  name="Guest_Btn">
</FORM>
</BODY>
</HTML>


登録用phpの抜粋
regist.php
<? php
$cid = pg_connect("xxxx");
$Kaiin_Str = "Insert into kaiin(kaiinmei, kaiinkana)
values('".$kanji_name."','".$kana_name."')";
$Kaiin_Result = pg_exec($cid, $Kaiin_Str);
$Miss_Count  = Pg_Cmdtuples($Kaiin_Result);
if($Miss_Count < 1)
{
     $Body_Msg = implode($HTTP_POST_VARS,";");
     mail($mail_to, $Sub_Msg, $Body_Msg, $mail_from);
}
?>

エラー発生時の$Body_Msgは全て空でした。


apacheのログ(4行目がエラー発生時でそれ以外は正常処理されております)
218.220.???.??? - - [22/Apr/2003:20:22:46 +0900] "POST /regist.php HTTP/1.1" 200
 2095 "http://hogehoge.com/check.php" "Mozilla/4.0 (compatible; MSIE 6.0;
Windows NT 5.1)"
202.225.???.??? - - [22/Apr/2003:20:22:57 +0900] "POST /regist.php HTTP/1.1" 200
 2105 "http://hogehoge.com/check.php" "Mozilla/4.0 (compatible; MSIE 5.01;
Windows 98)"
219.98.???.??? - - [22/Apr/2003:20:37:01 +0900] "POST /regist.php HTTP/1.1" 200
2095 "http://hogehoge.com/check.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows
 NT 5.1)"
220.59.???.??? - - [22/Apr/2003:20:51:21 +0900] "GET /regist.php HTTP/1.1" 200
2312 "http://hogehoge.com/check.php" "Mozilla/4.0 (compatible; MSIE 5.5; Windows
 98)"
220.96.???.??? - - [22/Apr/2003:21:11:13 +0900] "POST /regist.php HTTP/1.1" 200
2091 "http://hogehoge.com/check.php" "Mozilla/4.0 (compatible; MSIE 6.0; Windows
 NT 5.1; .NET CLR 1.0.3705)"
219.202.???.??? - - [22/Apr/2003:21:11:20 +0900] "POST /regist.php HTTP/1.1" 200
 2091 "http://hogehoge.com/check.php" "Mozilla/4.0 (compatible; MSIE 6.0;
Windows NT 5.1)"






PHP-users メーリングリストの案内