1

次のことが可能かどうか疑問に思っています.JQueryについて何も知らず、独自のjavascriptを作成する方法もまだ知りません. ユーザーが私の Web サイトにログインすると、「ログインが完了しました」というページが表示されます。その文の下に、リダイレクトされるまでの秒数をカウントダウンする文を取得したいと思います。これを行う簡単な方法はありますか?

私はすでにカウントダウン関数を持っています: 関数が最初に呼び出されると、ビュー 'view_login_success' がロードされ、$data[] 配列がそれに渡されます。$data['sec'] は、画面に表示される残りの秒数を保持します。do-while ループが終了すると、ユーザーはホームページにリダイレクトされます。「view_login_success」ビューがまったく読み込まれず、5 秒後にユーザーがホームページにリダイレクトされます。

function timerIn() {
    $now = time();
    $this->load->view('view_login_success', $this->data);
    do {
        if (time() - $now != 0) {
            $this->data['sec'] = $this->data['sec'] - 1;
            $this->load->view('view_login_success', $this->data);
            $now = time();
        }
    } while ($this->data['sec'] != 1);
    $this->data['sec'] = 5;
    redirect('user/start');
}

ビューは次のとおりです。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Login geslaagd</title>
    <?php $this->load->view('templates/header2'); ?>
</head>
<body>
        <h2  style="text-align: center;"><?php echo strtoupper(substr($this->session->userdata('gebruikersnaam'),0,1));
        echo substr($this->session->userdata('gebruikersnaam'),1); ?>, U bent ingelogd!</h2>
        <p>U word doorverwezen: <?php echo $sec; ?> seconden...</p>
</body>
<?php $this->load->view('templates/footer'); ?>

Javascript の JQuery でこれを行う方法がある場合は、それを機能させるために何をすべきかを説明してください。前もって感謝します!:)

4

2 に答える 2

3

それはphpの仕組みではありません。

5 秒後にページをリダイレクトする場合は、JS コードでリダイレクトする必要があります。ビューをクライアントに送信せずにユーザーをリダイレクトします。

現在、リダイレクトに 5 秒しかかかっていません。そう:

  • ビューを表示
  • JS にはタイマーがあり、リダイレクトされます。

JavaScript コードは次のようになります。

setTimeout(function(){
  window.location.href = 'theURLyouwant';
},5000)

または、古いメタタグを使用できます

<meta http-equiv="refresh" content="5; URL=theURLyouwant">
于 2012-07-20T16:57:34.953 に答える
1

この問題を解決するには、code-igniter を使用します。この参照クラスの出力を使用します。出力クラスは自動的にロードされます。これをロードする必要はありません。この関数を使用してヘッダーを設定します。

 $this->output->set_header('refresh:time-to-redirect; url='.site_url("your-url"));

このクラスの詳細については。

于 2015-12-13T14:42:20.803 に答える