dポイントプレゼントキャンペーン実施中!

ですが
PHPはクライアントから呼び出されたときのみサーバはその同じクライアントのみに実行結果を送るものなのでしょうか?

2人オンラインゲームを作るとなると
Aさんの呼び出しによる実行結果をAさんとBさんに
Bさんの呼び出しによる実行結果をBさんとAさんに
送らないといけません

Aさんの呼び出しによる実行結果をAさんに
Bさんの呼び出しによる実行結果をBさんに
送ることは通常のPHPの使い方ですから問題ないとして

問題は
Aさんの呼び出しによる実行結果をBさんに
Bさんの呼び出しによる実行結果をAさんに
に送ることができるかと言うことです

そのようにPHPはできていないのでしょうか?

A 回答 (4件)

<meta http-equiv = "refresh"> を使い,


HTTPクライアントが定期的に情報を取得,
一定間隔での同期を計る方法ですね。

その方法なら,HTTPサーバでも使えます。
ただし,2秒という言葉がちょっと…
というのも,HTTPクライアントソフトたる各社の
Webブラウザは,それほど速いページ更新動作を
目的として設計されていません。
(同一ページ内であれば,それなりの速度で動く)
その為,2秒という数字が実際に必要なら,クライ
アント側の対策も必要になるでしょう。
    • good
    • 0
この回答へのお礼

ありがとうございます
2秒は5秒ぐらいにしたほうがよさそうですね

PHPとmetaとクリッカマブルマップによって将棋など作れるのでしょうか?
無謀でしょうか?

お礼日時:2004/12/23 14:02

<?php


ob_start();

if(こまが動く処理をされたら){
echo"<meta http-equiv="Refresh" content="1;URL=http:更新されたページ(同ページでもgetで値を渡すとか">";
}

とかにしたらだめでしょうか。

この回答への補足

Aさんがアクションを起こしたときの
Aさんの画面の更新はPHPの本来の仕事だから細工をする必要はないのではないでしょうか?
Aさんのアクションを受けてその処理結果をBさんに送るのはPHPの仕事ではないのでそのときに
"<meta http-equiv="Refresh"…
の処理が必要になると言うことではないでしょうか?

補足日時:2004/12/23 20:57
    • good
    • 0
この回答へのお礼

ありがとうございます
いけるかもしれないと言うことですね

お礼日時:2004/12/23 20:38

サーバからクライアントにデータは直接送れない。


クライアントのリクエストがあれば、そのクライアントに送り返すことをしている。

ということを前提として、
Aさんの実行結果をファイルに書き出して、
Bさんがそのファイルの閲覧をリクエストすれば似たようなことはできます。

Aさんがサーバを介してBさんを直接呼び出すことはできません。
つか、PHPでオンラインゲームを作ろうとすることは間違っている。
(箱庭諸島みたいなゲームもありますが、付加がかかりすぎるので向いてない)

この回答への補足

例えば2秒ごとにサーバがクライアントにアクセス要求し自動的にクライアントがサーバからデータを取りにくるといったHTMLのequiva?タグがあったような気がするのですが・・・

補足日時:2004/12/23 11:27
    • good
    • 0
この回答へのお礼

ありがとうございます
無理があるのですね?

お礼日時:2004/12/23 11:20

それは,PHPを使うサーバの動作でPHPの動作ではありませんが…



Webで使うHTTPサーバなら
>クライアントから呼び出されたときのみ
>サーバはその同じクライアントのみに実行結果を送るもの
です。

この回答への補足

ちょっと調べてみたのですが

<meta http-equiv = "refresh">
をPHPのなかで使えば何とかならないでしょうか?

補足日時:2004/12/23 11:36
    • good
    • 0
この回答へのお礼

ありがとうございます
ということはそういうふうにはできていないということですね?

お礼日時:2004/12/23 11:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!