Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Langkah-langkah untuk melaksanakan fungsi daftar masuk PHP (dengan kod)

Langkah-langkah untuk melaksanakan fungsi daftar masuk PHP (dengan kod)

PHPz
PHPzasal
2023-04-03 14:08:421414semak imbas

Dengan pembangunan Internet, pembangunan laman web dan aplikasi menjadi semakin biasa, dan semakin banyak fungsi perlu dilaksanakan. Fungsi daftar masuk adalah fungsi yang sangat asas tetapi sangat popular Untuk laman web dan aplikasi rangkaian sosial, fungsi daftar masuk adalah bahagian yang sangat penting. Mari kita ambil bahasa PHP sebagai contoh untuk menerangkan cara melaksanakan fungsi daftar masuk.

1. Persediaan

Sebelum kita mula, kita perlu menyediakan kerja berikut:

  1. Pasang penterjemah dengan PHP versi 7.0 atau lebih tinggi, seperti XAMPP.
  2. Buat pangkalan data dan import jadual log masuk.

Kami menggunakan pangkalan data mysql di sini Selepas membuka pangkalan data, laksanakan pernyataan SQL berikut:

CREATE DATABASE sign;
USE sign;
CREATE TABLE checkin(
id MEDIUMINT NOT NULL AUTO_INCREMENT,
user_id VARCHAR(16) NOT NULL,
create_time DATETIME NOT NULL,
PRIMARY KEY (id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

Di sini kami mencipta pangkalan data bernama tanda, yang mengandungi tanda masuk. jadual digunakan untuk menyimpan maklumat daftar masuk. Jadual daftar masuk mengandungi tiga medan: id mewakili pengecam unik rekod daftar masuk, user_id mewakili ID pengguna daftar masuk dan create_time mewakili masa daftar masuk.

2. Pelaksanaan Kod

Seterusnya, kami mula menulis kod untuk fungsi daftar masuk. Mula-mula kita perlu mencipta fail index.php, kodnya adalah seperti berikut:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>签到</title>
</head>
<body>
    <?php
    if(isset($_POST[&#39;submit&#39;])) { // 判断是否提交了表单
        $userId = $_POST[&#39;user_id&#39;]; // 获取用户 ID
        $conn = mysqli_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;&#39;, &#39;sign&#39;); // 连接数据库
        if(!$conn) {
            die(&#39;连接数据库失败: &#39; . mysqli_error($conn)); // 判断连接是否成功
        }
        $query = "INSERT INTO checkin (user_id, create_time) VALUES (&#39;$userId&#39;, NOW())"; // SQL 插入语句
        if(mysqli_query($conn, $query)) { // 判断插入是否成功
            echo "<h2>签到成功!</h2>";
        } else {
            echo "<h2>签到失败!</h2>";
        }
        mysqli_close($conn); // 关闭connection
    }
    ?>
    <form method="post" action="index.php">
        <label for="user_id">用户ID: </label>
        <input type="text" id="user_id" name="user_id">
        <input type="submit" name="submit" value="签到">
    </form>
</body>
</html>

Idea kod:

  1. Apabila pengguna membuka halaman daftar masuk, satu borang dipaparkan pada halaman, dan terdapat kotak Input dan butang hantar untuk memasukkan ID pengguna dan menyerahkan maklumat daftar masuk.
  2. Apabila pengguna memasukkan ID dan mengklik butang hantar, borang akan menghantar permintaan kepada pelayan dari halaman untuk menentukan sama ada pengguna telah melog masuk dan menyimpan maklumat log masuk dalam pangkalan data.
  3. Halaman akhir memaparkan keputusan daftar masuk.

3. Kod lengkap

Berikut ialah kod fungsi daftar masuk yang lengkap (fail index.php).

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>签到</title>
</head>
<body>
    <?php
    if(isset($_POST[&#39;submit&#39;])) { // 判断是否提交了表单
        $userId = $_POST[&#39;user_id&#39;]; // 获取用户 ID
        $conn = mysqli_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;&#39;, &#39;sign&#39;); // 连接数据库
        if(!$conn) {
            die(&#39;连接数据库失败: &#39; . mysqli_error($conn)); // 判断连接是否成功
        }
        $query = "INSERT INTO checkin (user_id, create_time) VALUES (&#39;$userId&#39;, NOW())"; // SQL 插入语句
        if(mysqli_query($conn, $query)) { // 判断插入是否成功
            echo "<h2>签到成功!</h2>";
        } else {
            echo "<h2>签到失败!</h2>";
        }
        mysqli_close($conn); // 关闭connection
    }
    ?>
    <form method="post" action="index.php">
        <label for="user_id">用户ID: </label>
        <input type="text" id="user_id" name="user_id">
        <input type="submit" name="submit" value="签到">
    </form>
</body>
</html>

Analisis kod:

  1. if(isset($_POST['submit'])) bermakna jika borang menyerahkan data, logik selepas borang diserahkan (operasi log masuk) akan dilaksanakan.
  2. $userId = $_POST['user_id']; Dapatkan ID pengguna.
  3. $conn = mysqli_connect('localhost', 'root', '', 'sign'); Sambung ke pangkalan data.
  4. if(!$conn) Jika sambungan gagal, pelaksanaan program akan keluar dan mesej kegagalan akan digesa.
  5. $query = "INSERT INTO checkin (user_id, create_time) VALUES ('$userId', NOW())"; Tambahkan rekod daftar masuk.
  6. if(mysqli_query($conn, $query)) Jika penambahan berjaya, pengguna akan digesa untuk melog masuk dengan jayanya dan rekod log masuk akan ditambah.
  7. mysqli_close($conn) Tutup sambungan pangkalan data.

4. Ringkasan

Setakat ini, kami telah mempelajari cara menggunakan PHP untuk melaksanakan fungsi daftar masuk. Walaupun fungsi daftar masuk kelihatan mudah, ia tidak mudah untuk dilaksanakan. Kita perlu memahami dengan jelas keseluruhan proses daftar masuk dan melaksanakannya satu demi satu. Sudah tentu, dalam aplikasi praktikal, lebih banyak isu perlu dipertimbangkan, seperti daftar masuk pengguna berulang, had kekerapan daftar masuk, dll. Masalah ini perlu diselesaikan mengikut senario aplikasi yang berbeza.

Atas ialah kandungan terperinci Langkah-langkah untuk melaksanakan fungsi daftar masuk PHP (dengan kod). 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