Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk membangunkan sistem pengundian mudah menggunakan PHP

Bagaimana untuk membangunkan sistem pengundian mudah menggunakan PHP

王林
王林asal
2023-09-20 16:07:471123semak imbas

Bagaimana untuk membangunkan sistem pengundian mudah menggunakan PHP

Cara menggunakan PHP untuk membangunkan sistem pengundian yang mudah, contoh kod khusus diperlukan

Pengenalan:
Dengan pembangunan Internet, mengundi Aplikasi sistem menjadi semakin popular, sama ada untuk tinjauan pasaran, pilihan raya atau pengundian acara, sistem pengundian yang mudah digunakan dan cekap adalah penting. Sebagai bahasa pengaturcaraan yang popular, PHP boleh membantu kami membangunkan sistem pengundian yang ringkas dan berfungsi sepenuhnya dengan cepat. Artikel ini akan memperkenalkan cara membangunkan sistem pengundian mudah menggunakan PHP dan menyediakan contoh kod khusus.

1. Analisis keperluan fungsi sistem:
Sebelum mula menulis kod, kita perlu menjelaskan keperluan dan fungsi sistem. Sistem pengundian asas harus mempunyai fungsi berikut:

  1. Fungsi pendaftaran dan log masuk pengguna.
  2. Buat topik dan pilihan tinjauan pendapat.
  3. Pengguna boleh menyemak imbas dan mengambil bahagian dalam pengundian.
  4. Tunjukkan keputusan undian.

2. Reka bentuk pangkalan data:
Untuk menyimpan maklumat pengguna, topik dan pilihan pengundian serta keputusan pengundian, kami perlu mereka bentuk jadual pangkalan data. Berikut ialah contoh reka bentuk pangkalan data yang mudah:

  1. Jadual pengguna (pengguna):

    • id: ID pengguna, jenis integer , Kunci utama
    • nama pengguna: nama pengguna, jenis rentetan
    • kata laluan: kata laluan, jenis rentetan
    • created_at: masa penciptaan, jenis tarikh masa 🎜 🎜
  2. Jadual topik undian (pungutan suara):

      id: ID topik mengundi, jenis integer, kunci utama #🎜🎜
    • tajuk: tajuk topik mengundi, jenis rentetan
    • dicipta_oleh: ID pencipta, jenis integer (dikaitkan dengan jadual pengguna)
    • dicipta_pada: masa penciptaan, tarikh Jenis masa
  3. Jadual pilihan mengundi (pilihan):
  4. id: ID pilihan, jenis integer, kunci utama # 🎜🎜#
      poll_id: ID topik mengundi, jenis integer (dikaitkan dengan jadual topik undian)
    • option_text: teks pilihan, jenis rentetan
    • #🎜 🎜🎜#
    Jadual keputusan pengundian (undi):
  5. id: ID keputusan mengundi, jenis integer, kunci utama

      ID_jawatan undi: topik undian , jenis integer (dikaitkan dengan jadual topik undian)
    • option_id: ID pilihan, jenis integer (dikaitkan dengan jadual pilihan mengundi)
    • user_id: ID pengguna, jenis integer ( dikaitkan dengan jadual pilihan mengundi) Persatuan jadual pengguna)
    3. Langkah pembangunan sistem:

# 🎜🎜# Buat pangkalan data dan sambungkan :

Pertama, kita perlu mencipta pangkalan data bernama "sistem_pengundi" dan sambungkan ke pangkalan data:
    $conn = mysqli_connect("localhost", "root", "", "voting_system");
    if (!$conn) {
        die("数据库连接失败:" . mysqli_connect_error());
    }

  1. Pendaftaran pengguna dan fungsi log masuk: #🎜 🎜#Pengguna perlu boleh mendaftar dan log masuk ke sistem. Berikut ialah contoh kod mudah:

  2. a Pendaftaran pengguna:
  3. $username = $_POST['username'];
    $password = $_POST['password'];
    
    $hashed_password = password_hash($password, PASSWORD_DEFAULT);
    
    $sql = "INSERT INTO users (username, password) VALUES ('$username', '$hashed_password')";
    
    if (mysqli_query($conn, $sql)) {
        echo "注册成功!";
    } else {
        echo "注册失败:" . mysqli_error($conn);
    }

    b Log masuk pengguna:
    rreee

    #🎜. #Buat topik dan pilihan pengundian:

    Mencipta topik dan pilihan pengundian memerlukan pengguna untuk log masuk dan mempunyai kebenaran yang sepadan. Berikut ialah contoh kod ringkas:

    a Cipta topik tinjauan pendapat:
  4. $username = $_POST['username'];
    $password = $_POST['password'];
    
    $sql = "SELECT * FROM users WHERE username='$username'";
    $result = mysqli_query($conn, $sql);
    
    if (mysqli_num_rows($result) > 0) {
        $row = mysqli_fetch_assoc($result);
        if (password_verify($password, $row['password'])) {
            echo "登录成功!";
        } else {
            echo "密码错误!";
        }
    } else {
        echo "用户不存在!";
    }
  5. b. ## 🎜🎜#Penyertaan pengguna dalam mengundi:

    Pengguna perlu menyemak imbas topik undian dan memilih pilihan mengundi untuk mengundi. Berikut ialah contoh kod mudah:

    a Paparkan topik undian dan pilihan:

    $title = $_POST['title'];
    $created_by = $_SESSION['user_id'];
    
    $sql = "INSERT INTO polls (title, created_by) VALUES ('$title', '$created_by')";
    
    if (mysqli_query($conn, $sql)) {
        echo "投票主题创建成功!";
    } else {
        echo "投票主题创建失败:" . mysqli_error($conn);
    }

    b. #

    Tunjukkan keputusan pengundian:

    Keputusan pengundian boleh dicapai dengan mengira bilangan undian bagi setiap pilihan. Berikut ialah contoh kod mudah:
  6. a Keputusan undian statistik:

    $poll_id = $_POST['poll_id'];
    $option_text = $_POST['option_text'];
    
    $sql = "INSERT INTO options (poll_id, option_text) VALUES ('$poll_id', '$option_text')";
    
    if (mysqli_query($conn, $sql)) {
        echo "投票选项创建成功!";
    } else {
        echo "投票选项创建失败:" . mysqli_error($conn);
    }

    Kesimpulan:

    Artikel ini memperkenalkan cara untuk gunakan PHP Membangunkan sistem pengundian yang mudah, dengan contoh kod konkrit disediakan. Melalui langkah di atas, kami boleh melaksanakan fungsi sistem pengundian asas seperti pendaftaran dan log masuk pengguna, mencipta topik dan pilihan pengundian, penyertaan pengguna dalam mengundi, dan memaparkan keputusan pengundian. Mengikut keperluan sebenar, kami juga boleh menjalankan pengoptimuman dan pengembangan selanjutnya. Harap artikel ini membantu anda!

Atas ialah kandungan terperinci Bagaimana untuk membangunkan sistem pengundian mudah menggunakan PHP. 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