- ベストアンサー
PHPでDB処理中にプログレスバーを出したい
Ajax初心者です。 PHPでDB処理が長くブラウザタイムアウトが発生してしまう為 DB処理中はブラウザに処理中画面(プログレスバー表示有り)を 表示したいのですが、Ajaxを使ってプログレスバーを動かす 方法があれば方式を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
「処理中」を表示することは簡単です。 まず、ajaxで結果表示しようとするspan(もしくはdiv)に 「処理中」を表示し、その後その領域に結果を呼び出すだけです。 (呼び出させるまでは処理中と表示されます) しかし、処理がどのくらい進んでいるか・・・たとえば 全体処理の○○%・・・など表示するのかなりめんどうです。 よほどのことがないかぎりやめたほうがよいでしょう。 とくにsqlの処理終了予測はきわめて面倒なことだと思います。
その他の回答 (1)
- asuncion
- ベストアンサー率33% (2127/6289)
回答No.1
タイムアウトが発生しないよう、 データベース処理のロジックなどを見直す予定はありますか? プログレスバーを表示する方法が見つかったとしても、 問題の本質的な解決につながらないですよね。
質問者
補足
データベースの処理ロジックの見直しは行っておりますが 秒オーダーで結果を返せる物では無いと思ってます。
お礼
ありがとうございました。 SQLの処理時間を予測するのはサーバの負荷等にも左右されそう ですのでプログレスバーの表示はしない方向で検討しなおします。