ラウンジ(兼FAQ掲示板)

anqについて
過去ログ NO.1109472289
□ おじさん [2005年02月25日23時05分]
anqをdlさせていただきました。
正常に動作してます。
管理人のみの使用になっています。

実は質問を設定後、一定時間が経たないと
エラー表示
重複したデーター送信です。

と表示されます。

次の設定に10分程度経つと設定可能となりますが、また設定出来なくなります。
これは仕様なのか私だけなのか判りません。
仕様なら設定変更出来ませんか?
□ NXer [2005年02月26日18時31分]

はじめまして。NXerです。

>仕様
#-初期設定 ------------これが初期仕様ですね。
# マスターパスワード
$master = "anq";
# このファイルの名前
$script = "anq.cgi";
# 作業用フォルダ
$tmp = "./temp/";
,,,,,,,
# アンケートテーマの設定
# 0:管理者のみが設定できる
# 1:誰でも新しいアンケートテーマを設定できる
$open_mode = 1;
以下省略
#------ 初期設定ここまで ----------------#

↑には、時間の設定は見当たりませんでした。
すえぽんさんのサンプルでも当方のローカル・サーバの
anqでも、類似の現象は発生していません。

>私だけなの
かを検証するにはおじさんさまのURLと管理者設定なら
仮パスワード(例anq)とが必要です。

信頼できるご友人などにそれらをお知らせしてテストをしてい
ただければ、安心して原因絞込みができると思います。
また、仮パスワードを使えば当ラウンジで依頼すれば、
すえぽんさんをはじめ、いろんな方に、ご協力いただける
と思います。

「自作cgi」に関する不具合の問合せをしても、プロバイダーのほとん
どが、回答は、期待できません。しかし、ウェブサーバの稼動状況
が公開されていることもあり、多少おじさんさまでサーバーをモニター
できるかと思います。どのような時間帯でサーバーアクセスが変化
するのでしょうか。関係あるのか無いのか、よくわかりませんが、
なぞの10分間、送信されたテーマはウェブ空間のどのあたりをさ迷う
のでしょうか、また重複するのでしょうか。
□ おじさん [2005年02月26日21時55分]
> はじめまして。NXerです。
はじめましておじさんです。

少し表現がおかしい書き込みをしました。設定をして書き込むと、すぐにエラー表示が出ます。続いて設定する場合です。
10分と言いましたが、まちまちのようですべて1回目は正常で、続けて設定して新しい質問を登録するとエラーが出ます。

またパソコンを一度電源を落としてやると、書き込みは出来ます。
重複データーとは何を表しているのか判りません。cgiのプログラムの中にたしかに重複したデーター送信ですと言うプログラムの一部は存在しますが、私には何が影響かは判りません。

とりあえず知り合いから、新しい質問を登録してもらい、同じ現象が出るか調べてもらいます。

少しづつ解決してみたいと思います。
□ おじさん [2005年02月26日22時56分]
追伸ですが、anq.cgiの687行目付近に、重複したデーター送信ですと言うプログラムが有ります。これが何か関係しているような、気がします。

もし判るようでしたらお願いします。
明日知り合いに書き込みしていただきます。
□ NXer [2005年02月27日09時54分]

---------------------------02月26日22時56分発信
>追伸ですが、anq.cgiの687行目付近に
-----------------------------------------
ほぼ同じ時刻にanqの↑をみていました。夜分おそくなり
書き込みをためらってしまいました。貴重な情報を
たくさん頂きました。状況は当方にはかなり明確(clear)です。
NXerです。

おじさんさまのcgi歴などが不明のため、分りきったところは
お笑い草です。

cgiでは
1)ディレクトリ構成
2)初期値設定

がすべてといえます。そのいずれも当方には現在不明です。

そこで当方の例を参考までに書きますから、tempディレクトリ
内のデータファイル名の確認などに利用してください。
重複したデータはもちろん拒否されていますのでサーバー側に
はありませんが、エラーが出た直前のファイル名までは確認
できますね。その辺りの操作をスクリプトで追跡すると
おそらくエラーの原因を特定できます。
以上です。

********************************以下は参考までに掲載します。
当方のディレクトリ構成図です。
--------------------------
/anq/
..|-/temp/
......|-ファイル名
----------------------------
↓はほぼ連続して新しいテーマを設定したあとの
ファイル名です。時間を取得してファイル名にして
いることから、どれほど連続しても常に異なる
名前になります。
--------------読み方は前から西暦年月日時間(時分秒)
20050226230208
20050226230249
---------------------
重複データエラーとは、前のfilenameがリセットされないままに
再度送信しようとするエラーと考えられます。

>パソコンを一度電源を落としてやると、書き込みは出来ます。

電源を落とすことによって、諸変数(例filename)などは全て
filename="";
と同じ処理になります。おじさんさまの操作がこの変数を無意識に
クリア(あるいはリセット)していたことになります。

>すべて1回目は正常で、
新規に起動する時は、全ての変数は初期値設定になります。
filenameなど特に設定しない場合は、デフォルト値として
「空」(null) つまり filename="";です。
その結果、元が空ですから、新たなファイル名とは重複すること
がありません。正常であるというご報告も合理的な説明が
付きます。

>続けて設定して新しい質問を登録するとエラーが出ます。

この過程に問題があるようです。いちいちコンピュータ
をリセットするわけには行きません。やはりご友人のテスト結果を
まち、重複エラーが出る時は、スクリプト(当方には問題なしですが)
か初期設定の問題でしょうか。

初期値の--------------
# 作業用フォルダ
$tmp = "./temp/";
----------------------
の ./ (ドットスラッシュ)とは今いるディレクトリ内のtempディレ
クトリという路(path)をとおりますよという意味です。このあたりは、
それぞれの環境に応じて微妙にことなりますので当方には大きな疑問符です。
自己解決に至るとは思いますが、すえぽんさんのcgi設置は、本人の責任
ではない無数の無限ループの落とし穴がありますから、遠慮なく
友人やラウンジのすえぽんコミュニティにご質問されてはいかがでしょ
うか。
□ おじさん [2005年02月27日11時44分]
NXerさん こんにちわ おじさんです。

お忙しい中、返信ありがとうございました。
言われていることは、ほぼ判ります。
ひとつのデーターを日にちと時間でIDのように設定していますから、
異なるデータで登録してあるので、中身を見ると判ります。
> # 作業用フォルダ
> $tmp = "./temp/";
多分何か重複する指令がうまく私の環境では働かない事が有るかも知れませんね。

フォルダー名も環境によるかも知れないので、違う名前に変えてみます。
たしかにすべての環境に合うとは思っていませんので、色々と見てみます。

色々とありがとう ございました。
これで終了します。


suepon.com | CGI作成/CGI制作 | JavaScript | ドメイン検索 | バナー自動作成 | Google ダンスツール | 松浦亜弥 | H.P.memo | パソコン | ネイル

Copyright (C) 2002 - 2009 suepon , All rights reserved. Powered by CGI Script Market.