0

私はこのコードを持っているとしましょう

$itemtoDisplayTime = $model->getItemTime()  // e.g 03:00pm
$currentTime = date('H:i'); //this is the system clock/time

ページを更新せずにリダイレクトのプロセスを自動化するために JavaScript を使用することは適切ですか? もしそうなら、どのように?

$itemDisplayTime が $currentTime に等しいとしましょう。可能であれば、これらの変数を JavaScript または jquery で使用する方法

4

3 に答える 3

2

最初に、リダイレクトする必要がある秒数を計算します。次に、次のメソッドで秒を使用します。

あなたの場合、 strtotime がうまくいくかもしれません。

$seconds = strtotime($itemtoDisplayTime) - time();

リダイレクトにはいくつかの方法がありますが、

  1. RefreshPHP からヘッダーを送信します。

    header("Refresh: $seconds; url=$url");
    
  2. Javascript の使用

    window.setTimeout(function(){
        location.href="desired url";
    }, seconds*1000);
    
于 2013-01-08T05:18:54.890 に答える
0

なぜjavascriptを使いたいのですか? phpを使えばできるのに、この方法を試してみてください

if($itemDisplayTime==$currentTime)
header( "refresh:0;url=yourpage.php" );
于 2013-01-08T05:18:28.483 に答える
0

あなたの目標が何であるかに応じて、2つの可能な解決策があると思います.

ページを更新してデータベース タスクを実行する場合は、ホストがサポートしている場合は cron ジョブをお勧めします。次に、コンピューターをシャットダウンし、タスクをサーバー側で実行することができるため、その一例は次のようになります: (時間はホストの Web サイトで選択されます)

php -q /home/path_to_file/your_link.php >/dev/null 2>&1 

これが他の目的であり、ajax を使用する必要がある場合。getItemTime を使用すると、ページが最初にロードされたときに一度だけ取得されると思うので、Java 関数を再実行して時間を再確認するために数分ごとに呼び出しを続ける必要がありますが、それは多くのことになりますより複雑なソリューション。この方法を試してみたい場合は、特定のコードを作成できるように、何をしようとしているのかをより詳しく説明してください。

于 2013-01-08T05:23:35.600 に答える