メイン 迷える子羊の部屋【初心者専用】 PHPを介した掲示板でFLASHが最新のログを読み込まない | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
QouFla | Åê¹ÆNo.4358 投稿日時: 2004-2-29 13:35 |
新米 居住地: 投稿: 8
使用環境:
WinXP、2K Flash MX PHP 4.0 mySQL |
PHPを介した掲示板でFLASHが最新のログを読み込まない 環境:Win2K、FLASH MX、PHP4.0
はじめまして! FLASHとPHPの連携型プログラムの練習用に、 トップに置くような簡易掲示板を作成しました。 しかし、書き込んでも、PHPが受け取ってDATファイルに 書き込むまではうまくいくのですが、書き込んだ内容が 更新されません。 F5を押して読み直してもだめで、 一度ブラウザを全部閉じないと、書き込んだ内容が反映されません。 全体の流れは以下のとおりです。 1フレーム:読み込み log.cgi(Data=name1<>文章<_>name2<>文章<_>・・・)を読み込みます。 読み込んだファイル内容をsplitでデコードする。 メインのデータ記録用MCに記録 ↓ 2フレーム:データ表示 ↓ 3フレーム:入力フレーム 名前と文章を入力する ↓ 4フレーム chat.phpに名前と文章、過去ログをPOSTで送信する。 chat.phpの処理が終わったら、1フレームに戻る。 chat.php flashからデータを受け取る(POST) 名前と文章から、システムで使う文字を変換する。($を$にしてみたり) データをlog.cgiに書き込む。("Data=${名前}<>${・・・) こんな感じなんです。 現状では、ログファイルへの書き込みはできていて、 最初に述べた通り、一度ブラウザを全て閉じると更新されています。 HTMLを書き直したりして直るものなのでしょうか? 実物は下記のアドレスにおいてあります。 http://qou.jpn.ch/test/beta/index.html ご指南いただければ幸いです |
長沢剛 | Åê¹ÆNo.4359 投稿日時: 2004-2-29 15:25 |
新米 居住地: 東京 投稿: 5
使用環境:
XP WIN2000 MacOS 8.6 ,9 Flash5 ,MX2004 |
Re: PHPを介した掲示板でFLASHが最新のログを読み込まない 過去ログに答えはあると思いますが。。
手っ取り早い方法を試してみてください。 >chat.phpの処理が終わったら、1フレームに戻る。 送信処理をして、直ぐに1フレームに戻ると、phpが書き込み処理している間にFLASHが読込み処理をするので、追いつかなくて読込むテキストがない状態で、フレームが進んでいるのかと思います。 1フレームに戻る処理を少しフレームなどを追加して、読込よを少し遅らせて見て下さい。 厳密には、phpで書き込み処理をして、書き込みが終わったら、Flashに終わったことを知らせて、それを受けて、Flash側で再読込みをさせれば確実でしょうけれど、簡単に上の処理で上手くいったりします。 もしそれでもダメな場合は他の原因が考えられます。 的外れだったらごめんなさい m(_ _)m |
QouFla | Åê¹ÆNo.4360 投稿日時: 2004-2-29 15:51 |
新米 居住地: 投稿: 8
使用環境:
WinXP、2K Flash MX PHP 4.0 mySQL |
Re: PHPを介した掲示板でFLASHが最新のログを読み込まない ご返信ありがとうございます。
一応onLoadを使用して送受信行っているつもりなんですが: //_root.nameは記入者名 formSend.name = _root.name; //_root.phraseは記入文 formSend.phrase = _root.phrase; //_root.commentは過去ログを全て足したもの formSend.comment = _root.comment; formSend.sendAndLoad("http://qou.jpn.ch/",formSend, "POST"); formSend.onLoad = function(){ _root.name = ""; _root.gotoAndPlay(1); //今はちょっと次の空フレームへ飛ばしています } こんな感じになっています。 chat.phpの方は、書き込みの処理の後にecho "ok"で戻しているんですが。。。 更新のほうは済んでいるので、フレームを遅らせてもだめみたいです…。 |
長沢剛 | Åê¹ÆNo.4361 投稿日時: 2004-2-29 16:29 |
新米 居住地: 東京 投稿: 5
使用環境:
XP WIN2000 MacOS 8.6 ,9 Flash5 ,MX2004 |
Re: PHPを介した掲示板でFLASHが最新のログを読み込まない 最新以外は読込みできるのであれば、読み込み確認処理はなされていると思いますが。。
既に読まれていると思いますが、下記以外の書き方も有ります。 // 内容読込み確認処理 if (何でも良い == null) { // [1]最後の変数がまだロードされていなければ this.gotoAndPlay(_currentframe-1); // [2]前のフレームに戻る } else { // [3]最後の変数がロードされたら 表示する処理 } 書き込みが終わってからも、過去データを読込む時のように上記のような処理を通さないと、 最新のデータが表示出来なかったりします。 |
rin-ko | Åê¹ÆNo.4362 投稿日時: 2004-2-29 16:38 |
職人 居住地: 東京 投稿: 397
使用環境:
MacOSX10.5/10.4 WinXP SP3 MX2004Pro/CS3 |
Re: PHPを介した掲示板でFLASHが最新のログを読み込まない QouFlaさん、こんにちは。
1フレームでどのような処理をなさっているのか判らないのですが、もしかしてログが読み込めない、のではなく 「書き込み前のログ(変数)がある=ログ読み込み完了 →新たに読み込みをしない」 という判定をなさっていたりは…しませんか? もし勘違いでしたら、すみません。 |
youich | Åê¹ÆNo.4364 投稿日時: 2004-2-29 16:59 |
職人 居住地: kobe 投稿: 349
使用環境:
Tiger |
Re: PHPを介した掲示板でFLASHが最新のログを読み込まない もしかして、logデータをFlashから直接LoadVars等で読んでるのなら
キャッシュのせいじゃないですかね? var lo = new LoadVars(); lo.load("log.data"); ↓ lo.load("log.data?"+new Date().getTime()); でだめかな。
|
QouFla | Åê¹ÆNo.4365 投稿日時: 2004-2-29 17:11 |
新米 居住地: 投稿: 8
使用環境:
WinXP、2K Flash MX PHP 4.0 mySQL |
Re: PHPを介した掲示板でFLASHが最新のログを読み込まない youichさんのお書きくださったものを貼ってみたところ
ばっちり動きました! どうもrin-koさんのおっしゃるとおりだったようです。 おかげさまでflashのプログラミングに見切りをつけずに 続けることができそうです! ありがとうございました!これからも頑張ります! |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |