人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPを使い、処理中は「しばらくお待ち下さい」のメッセージを出し、処理後は完了ページに移動させ、終了メッセージを表示させたいと思っています。

以下のソースを書いたのですが、処理後のheaderでエラーが出ます。
headerの前に出力しているからだと思いますが、代替案として何か良い方法は無いでしょうか?
出来ればJavascriptなどを使わず、PHPだけで対応出来ればと思います。


■処理ページ(test.php)
if($_GET["page"]==""){
echo "しばらくお待ち下さい";
ob_end_flush();
for($i=0;$i<3;$i++){
echo ".";
sleep(1);
}
header("Location:comp.php?page=1");
}

■完了ページ(comp.php)
if($_GET["page"]=="1"){
echo "完了";
}


●質問者: kt26
●カテゴリ:ウェブ制作
✍キーワード:Comp ECHO JavaScript PHP test
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● GoldenDawn
●35ポイント

PHP だけでなら、セッションで接続を維持しつつ、

Refresh で一定時間ごとに処理完了までページを更新するしかないのでは。

◎質問者からの返答

metaタグのrefreshですよね?

header("Refresh: 1;");をforの後に追加したのですが、同じようなエラーが出ました。


2 ● b-wind
●35ポイント

JavaScript 等を使わないのであれば、PHPでクライアントサイドの状況を直接操作するのは無理なので

残る手は一つ。

HTMLタグ/ページ全般タグ/ページの自動ジャンプ - TAG index

refresh で処理確認ページをロード。

完了していれば完了ページに。完了していなければ再度確認ページに refresh するページを出力するぐらいかと。

◎質問者からの返答

やっぱりこの方法しかないのですかね。PHPだけで出来ればと思いましたが、metaを使うようにします。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ