Rumah >pangkalan data >tutorial mysql >## Bagaimana untuk Menentukan Status Dalam Talian Pengguna dengan Sesi dan MySQL?

## Bagaimana untuk Menentukan Status Dalam Talian Pengguna dengan Sesi dan MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-26 11:42:291024semak imbas

## How to Determine User Online Status with Sessions and MySQL?

Menentukan Status Dalam Talian Pengguna dengan Sesi dan MySQL

Untuk memastikan sama ada pengguna terlibat secara aktif, seseorang boleh menggunakan mekanisme penjejakan sesi dalam PHP dan MySQL. Setiap kali pengguna mengakses halaman web, cap masa yang mewakili masa aktif terakhir mereka direkodkan dalam entri pangkalan data pengguna mereka. Selepas itu, pertanyaan dijalankan untuk mengira pengguna dengan masa aktif terakhir dalam tempoh lima minit terakhir, dengan berkesan membezakan pengguna dalam talian daripada pengguna luar talian.

Aktiviti Pengguna Yang Dikemas Kini Berterusan

Kepada memantau aktiviti pengguna walaupun semasa tempoh tidak aktif yang berpanjangan, JavaScript boleh digunakan untuk menghantar "ping" berkala ke pelayan setiap 60 saat. Kemas kini berterusan ini memastikan rekod pengguna kekal tepat, tanpa mengira kekerapan menyemak imbas.

Kod Asal (2009)

<code class="javascript">var stillAlive = setInterval(function () {
    /* XHR back to server
       Example uses jQuery */
    $.get("stillAlive.php");
}, 60000);</code>

Kod Kemas Kini (2022)

<code class="javascript">(async function ping () {
    // Asynchronously call stillAlive.php
    await fetch( "stillAlive.php" );
    // Issue this call again in 60 seconds
    setTimeout( ping, 60_000 );
}());</code>

Atas ialah kandungan terperinci ## Bagaimana untuk Menentukan Status Dalam Talian Pengguna dengan Sesi dan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn