-4

HTMLチェックボックスと送信ボタンのあるページがあります。「送信」をクリックすると、チェックされたすべてのチェックボックスを取得し、そのチェックボックスに一致するスクリプトを実行する PHP スクリプトがあります。

一部のスクリプトには時間がかかる場合があるため、スクリプトがまだ実行中であることを示す進行状況バーまたはその他のインジケーターのようなものを作成したいと考えています。これは、元のフォームが送信されたときに別のページに読み込まれます。スクリプトが完了すると (おそらく数時間後)、ページはリダイレクトされるか、別のページへのリンクを提供するはずです。

私は初めてで、この種の「動的」アイコンまたは進行状況ページを作成する方法PHPHTML、すべてが完了したときにリダイレクトする方法を知りたいです。

ありがとう!

4

2 に答える 2

1

私の意見では、これにはAJAXを使用したいと思うでしょう。簡単な解決策は、jQuery でアニメーションを表示し、スクリプトが結果を返したらそれを取り出すことです。これはタフの行です:

$('#myform').submit(function() {
    $(this).hide(); // hide the form
    $('#loading').show(); // make a previously-hidden 'loading' element visible, possibly a div with an animation image/background in it
    $.post('/myprocesspage.php', $(this).serialize(), function(data) {
        $('#loading').hide(); // done loading
        $('#done').html(data).show(); // Put the output of the script in #done element, and show it
    });
});

もちろん、必要に応じてこれを変更する必要があります。コードを単にコピーして貼り付けるのではなく、最初にコードが何をどのように機能するかを理解してください。jQuery APIのドキュメントを参照して、私が使用する関数がどのように機能するかをお読みになることをお勧めします。次に、動作を必要に応じて変更できます。

于 2013-06-18T07:20:04.827 に答える
0

別のページにリダイレクトするのではなく、AJAX (JavaScript スクリプト技術) を使用してフォームを送信する必要があります。このチュートリアルをチェックしてください。

于 2013-06-18T07:18:20.417 に答える