配付スクリプトに関するお問い合わせ
配付スクリプトについて質問・要望・不具合報告などの書き込みは以下のサポート掲示板に書き込みをお願いします。
※ 現在、配布スクリプトに関するサポートは停止中です。
Multi Schedule Board1.1.4のイベントBBSについて質問です。
イベントを登録してからそのイベントBBSに投稿すると「アクセスされたイベントは削除されました」というページがでます。投稿自体は成功しています。 CGIの設定がおかしいのかと思い、ダウンロードしたMulti Schedule Board設定を全く変更せずにイベント登録して、BBSに投稿しても同じような症状が出ます。サーバーは自宅サーバーです。 よろしく御願いします。
私なりに調べたところ、PCによって正常に投稿できたり、削除されましたページへ行ったりするようです。
そのPCの違いはIE7とIE6とブラウザの違いです。IE7では正常に投稿できて、IE6では削除ページへ行ってしまうみたいです。IE6は2台所持していますが2台ともダメでした。 でもこのページに置いてあるサンプルだとIE6でも正常に投稿できますね。うーん、何が原因なんだろう?
Multi Schedule Boardをお使いいただき、ありがとうございます。
BBSの投稿の問題ですが、 ファイルに投稿した内容を出力後、 mulsche.cgi?mode=show_evt&evtno=XX(イベントの番号) としており、単純にcgiの目的のイベント画面を再表示しているだけなので、ブラウザの違いは考えづらいです。 BBS投稿後「アクセスされたイベントは削除されました」というページが表示された時と 投稿前のブラウザのURLを見ていただき、mulsche.cgi?以降の値を教えてください。 基本的に両者の値は同じになるはずなのです。 また「アクセスされたイベントは削除されました」と出る場合は、evtno=XX(イベントの番号)の値が存在しない番号になっている可能性があります。 例えば、Multi Schedule Boardのサンプルで mulsche.cgi?mode=show_evt&evtno=evt7 とすると同じように「アクセスされたイベントは削除されました」となります。 それとBBSの投稿を個別に削除したときも同じように mulsche.cgi?mode=show_evt&evtno=XX(イベントの番号) でイベント画面に戻るようにしていますので、 これも確認してみてください。
イベント設定でもファイルに出力後、イベント画面に戻るようにしていますが、ここでも
mulsche.cgi?mode=show_evt&evtno=XX(イベントの番号) でイベント画面に戻るようにしています。 IE6でのイベント設定時は問題ないでしょうか?
さっそくの回答ありがとうございます。
まず、投稿する前のURLは/mulsche.cgi?mode=show_evt&evtno=evt1です。 投稿後の削除されましたページのURLはmulsche.cgi?mode=show_evt&evtno=evt1#bbs-headでした。 BBSの投稿を個別に削除したときも「削除されましたページ」に飛んでmulsche.cgi?mode=show_evt&evtno=evt1#bbs-headです。 イベント設定時は問題ありません。 よろしく御願いします。
投稿する前の
mulsche.cgi?mode=show_evt&evtno=evt1 と、投稿後の mulsche.cgi?mode=show_evt&evtno=evt1#bbs-head は、「#bbs-head」はページ内のある部分に移動するためのものなので、 実質的に投稿前と投稿後は同じURLということになります。 ですから同じURLにアクセスしながら投稿後「削除されたページ」となるのは不思議な現象です。 しかもIE6でイベント設定時は問題ないのも不思議です。 イベント画面に戻る処理はBBSとまったく同じものなので。 「削除されたページ」が表示されている時に、ブラウザのリロードボタンを押したらどうなりますか? それとcgiの場所の設定で $cgi_url = "./mulsche.cgi"; を相対パスから絶対パス(http://から始まる)に変えてみて試してみて下さい。 キャッシュを読みに行きがちなIE6とサーバーの仕様に左右される部分がありそうなので。 それとIE6の設定もキャッシュを読みに行かない設定にしてみて下さい。
まずリロードを試してみました。するとイベントのページになりますが、BBSの部分ではなくトップ(タイトルのgifがある部分、下にBBS)に戻ります。
キャッシュと絶対パスを変更してもやはり同じでした。 イベント設定でBBSの個別削除をしても「アクセスされたイベントは削除されました」に飛びます。BBS全削除では正常にイベントページに飛びました。 うーん、自宅サーバーということも影響しているのでしょうか。ローカルからアクセスするとでる症状とか。一度外部からアクセスして試してみます。 もしよろしければ自宅サーバーにテスト用に設置してみましたので試してみて下さい。 http://wpc.blogdns.com/test/mulsche.cgi CGIの設定はずべてデフォルトです。パスワードも。 ローカルからアクセスするとでる症状なら自分だけ我慢すれば良いのでいいのですが。
私のPCからIE6でテストさせていただきましたが、KUROさんと同じ現象がでますね。
少しばかりテストしてみた結果、 ・イベント設定時には問題が発生しない。 ・スケジュールデータ登録では問題発生しない。 ・スケジュールデータ個別削除では問題は発生しない。 ・BBS投稿で「削除されたイベント」となる。 ・BBS個別削除でも「削除されたイベント」となる。 ということが分かり、OKとNGの違いはURLの後ろに「#bbs-head」が着いている事。 まずは2315行付近「BBSデータ出力用サブルーチン」内の print "Location: $cgi_url?mode=show_evt&evtno=$evt_no\#bbs-head\n\n"; を print "Location: $cgi_url?mode=show_evt&evtno=$evt_no\n\n"; としてみてください。(\#bbs-headを外す) ちなみにIE6で「削除されたイベント」が表示されている時にプロパティを表示してみると 添付画像のようにURLが「mulsche.cgi?mode=show_evt&evtno=evt1#bbs-headbbs-head」とおかしなものになっており、 (URL欄はmulsche.cgi?mode=show_evt&evtno=evt1#bbs-head) サーバー側と受け取る側の間で問題が生じているいるのかもしれません。 サーバーについては詳しくないのですが、元のイベント画面に戻る処理は Locationヘッダというものを使用して、指定したURLへ飛ぶようにしていますが その際サーバー側とブラウザ側のやりとりで何かが悪さをしているのかもしれません。 サーバーによってはLocationヘッダに対応していないものもあるようなので、 上記のテストでも問題が解決しない場合、Locationヘッダを使わず、一度「投稿が完了しました」というページをはさみ、 イベント画面に戻るボタンを押して元に戻るというテストをしてみる必要が出てくるかもしれません。
テストしていただきありがとうございました。
上記改造でうまくイベントページが表示されました。 ありがとうございます。 多人数のクラブの出欠管理をしてまして、大変重宝しています。 多人数になればなるほど威力を発揮するCGIですね。
問題が解決して良かったです。
今回の問題は私の方でも勉強になりました。 なお、2280行付近「BBSデータの個別削除用サブルーチン」内でも 同じ記述をしていますので「\#bbs-head」を削除しておいてください。 |