[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 メーリングリストの案内