• 締切済み

CGIプログラムを使った申し込みフォームに番号を振りたい

CGIプログラムを使うことにより、WEB上から申し込みフォームを使って入力事項をメールに送信することができますが、このメールに番号をつけたいです。 送信した順に、届いたメールに番号がついているようにすることは可能でしょうか? どうか良い案を教えて下さい。

みんなの回答

  • rara_sun
  • ベストアンサー率50% (271/539)
回答No.2

可能です。 要領としては、よく見かけるホームページのカンタのCGI番です。 Webサーバ(CGIがあるサーバ)に、メール番号を保存するフィルを置いておきます。送信の確定をするたびに、このファイルから番号を読込みます。この読み込んだ値に1加算して、メールの件名に付与して送信し、再度ファイルに加算した結果を書き込みます。 気を付ける必要があるのは、ほぼ同時にこの処理が発生したときで、普通に考えたら不整合(同じ番号がダブル)が発生します。これは、CGIを作る時に工夫する事で解決できます。メール番号を読み込む前に、今から読み込むぞ!っていうフラグファイルを生成し、処理が終わったら消します。他のプロセスは、このファイルが消えるまで待ちます。(いわゆるファイルのロックというやつです) サンプルは、カウンタのものですが、考え方を流用できると思います。 http://www.cgi-down.com/cgi/l_counter.html

ponsuke777
質問者

お礼

ありがとうございました。参考にさせて頂きます。 でも、ちょっと難しそうですね。。

ponsuke777
質問者

補足

もし良かったら、その部分のプログラムを書いて頂けますでしょうか。。

  • so_blue
  • ベストアンサー率48% (50/104)
回答No.1

> 届いたメールに番号がついているようにすることは可能でしょうか? CGI側でカウントを取るようにすれば可能だと思われます。

ponsuke777
質問者

お礼

ご協力ありがとうございました!!

関連するQ&A