KENT-WEB サポートコーナー 過去ログ [ 0337 ]


記事No: 8231
投稿日: 2011/01/31(Mon) 11:56:39
タイトルPostmail ログ保存について
ID情報: huziy
投稿者: huziy
URLhttp://huziwi.boo.jp/form/postmail.txt

はじめまして。
携帯とPC両方で扱える、シンプルなメールフォームをと思い、KENT-WEBさんのPostmailにたどり着きました。

フォームの設置、基本設定、PCと携帯共に送信確認等問題無く行えました。
送信内容のログ保存が必要となり、下記過去ログを参考にし、カスタマイズしました。
また、生年月日の連結表示も必要なため、2個目の過去ログのカスタマイズをしました。

【postmailでのCSVファイルについて】
http://www.kent-web.com/support/old/68/0020.html
【Postmail 生年月日の連結表示に関して】
http://www.kent-web.com/support/bbs/?list=log&no=7772

変更をし、送信内容のログをCSVで保存する事ができたのですが、新しくフォームに入力された内容が上書きされ、過去ログ1件のみが更新され続ける状態になります。

過去ログが蓄積されるように、したいのですがどうしたら良いでしょうか。

↓小職にて、上記のカスタマイズしましたPostmail cgiです
http://huziwi.boo.jp/form/postmail.txt

※元よりCSVのログ保存機能のある、Clipmailが良かったのですが、auの電話でのみ表示がされない等の問題があり、Postmailをカスタマイズして使う事となりました。


記事No: 8232
投稿日: 2011/01/31(Mon) 23:28:48
タイトルRe: Postmail ログ保存について
ID情報: teketen
投稿者: てけてん

参考になさった過去ログ当時のバージョンは、今よりも低いと思います。
どのバージョンからか、連続送信のチェックが機能として追加されましたが、過去ログではその機能が無い時だと思います。
というのも、現在のバージョンでは、設定に既に

# ログファイル【サーバパス】
$logfile = './data/log.cgi';

という項目があり、$logfileの変数が使われているからです。
この変数に設定されたファイルに、送信者のIPアドレスと送信時間が1件だけ保存されます。
その為、CSVファイルの指定に同じ変数名を使用しているので、1件しか保存出来ないのです。
ですので、CSVファイルを指定する変数名を変更して下さい。
現在、上げて下さった変更済みのスクリプトの設定では

# ログファイル【サーバパス】
# $logfile = './data/log.cgi';

# ログファイル
$logfile = './postmaillog';

になっていますので、

# ログファイル【サーバパス】
$logfile = './data/log.cgi';

# CSVファイル
$csvfile = './postmaillog';

に変更して、追加されたCSVファイルの書き込み部分のopenを

open(DAT,"+< $csvfile") || &error("Open Error: $csvfile");

に変更して下さい。


記事No: 8233
投稿日: 2011/02/01(Tue) 10:32:43
タイトルRe^2: Postmail ログ保存について
ID情報: huziy
投稿者: huziy
URLhttp://google.com

てけてん様

ご丁寧に解説、変更方法までありがとうございました。
無事に解決いたしました。
コレを機に、もう少し勉強してみたいと思いました。
ありがとうございました。


[検索ページ]