Cara menambah fungsi kerjasama berbilang pengguna pada sistem perakaunan - Bagaimana untuk membangunkan kerjasama berbilang pengguna menggunakan PHP, contoh kod khusus diperlukan
#🎜 🎜#Dari peribadi Daripada sistem perakaunan kepada sistem pengurusan kewangan peringkat perusahaan, kerjasama berbilang pengguna sentiasa menjadi fungsi penting untuk meningkatkan kecekapan kerja dan kerjasama. Dalam artikel ini, kita akan membincangkan cara membangunkan sistem perakaunan menggunakan PHP dan menambah keupayaan kerjasama berbilang pengguna. Kami juga akan menyediakan contoh kod konkrit. Langkah Pertama: Reka Bentuk Pangkalan DataSebelum kita mula menulis kod, kita perlu mereka bentuk struktur pangkalan data terlebih dahulu. Dalam artikel ini kami menggunakan MySQL sebagai sistem pengurusan pangkalan data. Berikut ialah reka bentuk jadual pangkalan data yang mudah, termasuk jadual pengguna, jadual akaun dan jadual kebenaran. Jadual pengguna (jadual pengguna):id (int) // 用户ID username (varchar) // 用户名 password (varchar) // 密码
id (int) // 账目ID user_id (int) // 用户ID(外键,关联users表) title (varchar) // 账目标题 description (text) // 账目描述 amount (decimal) // 金额
id (int) // 权限ID user_id (int) // 用户ID(外键,关联users表) account_id (int) // 账目ID(外键,关联accounts表)
Selepas mencipta jadual di atas dalam pangkalan data, kita boleh mula menulis kod PHP.
Langkah 2: Pendaftaran pengguna dan fungsi log masuk
Pertama, kita perlu menulis kod untuk fungsi pendaftaran dan log masuk pengguna. Apabila pengguna mendaftar, dia perlu menyediakan nama pengguna dan kata laluan, dan memasukkan maklumat pengguna ke dalam jadual pengguna.
// 注册 if (isset($_POST['register'])) { $username = $_POST['username']; $password = $_POST['password']; // 检查用户名是否已存在 $checkUsernameQuery = "SELECT id FROM users WHERE username = '$username'"; $checkUsernameResult = mysqli_query($con, $checkUsernameQuery); if (mysqli_num_rows($checkUsernameResult) > 0) { echo "用户名已存在"; } else { // 插入新用户 $insertUserQuery = "INSERT INTO users (username, password) VALUES ('$username', '$password')"; mysqli_query($con, $insertUserQuery); echo "注册成功"; } } // 登录 if (isset($_POST['login'])) { $username = $_POST['username']; $password = $_POST['password']; // 检查用户名和密码是否匹配 $checkUserQuery = "SELECT id FROM users WHERE username = '$username' AND password = '$password'"; $checkUserResult = mysqli_query($con, $checkUserQuery); if (mysqli_num_rows($checkUserResult) > 0) { echo "登录成功"; } else { echo "用户名或密码错误"; } }
Langkah ketiga: pengurusan kebenaran antara pengguna
Seterusnya, kita perlu melaksanakan fungsi pengurusan kebenaran antara pengguna. Iaitu, pengguna boleh menentukan kebenaran pengendalian (seperti melihat, mengedit, dll.) yang dimiliki oleh pengguna lain pada akaun mereka sendiri.
// 添加权限 if (isset($_POST['add_permission'])) { $account_id = $_POST['account_id']; $user_id = $_POST['user_id']; // 检查用户是否有权限修改该账目的权限 // 这里需要根据实际情况进行权限判断,例如只有账目的创建者才能添加权限 $checkPermissionQuery = "SELECT id FROM permissions WHERE account_id = '$account_id' AND user_id = '$currentUserId'"; $checkPermissionResult = mysqli_query($con, $checkPermissionQuery); if (mysqli_num_rows($checkPermissionResult) > 0) { // 添加权限 $insertPermissionQuery = "INSERT INTO permissions (user_id, account_id) VALUES ('$user_id', '$account_id')"; mysqli_query($con, $insertPermissionQuery); echo "添加权限成功"; } else { echo "您没有权限添加权限"; } } // 删除权限 if (isset($_POST['delete_permission'])) { $permission_id = $_POST['permission_id']; // 检查用户是否有权限删除该权限 // 这里需要根据实际情况进行权限判断,例如只有账目的创建者或权限的创建者才能删除权限 $checkPermissionQuery = "SELECT id FROM permissions WHERE id = '$permission_id' AND (user_id = '$currentUserId' OR account_id = '$currentAccountId')"; $checkPermissionResult = mysqli_query($con, $checkPermissionQuery); if (mysqli_num_rows($checkPermissionResult) > 0) { // 删除权限 $deletePermissionQuery = "DELETE FROM permissions WHERE id = '$permission_id'"; mysqli_query($con, $deletePermissionQuery); echo "删除权限成功"; } else { echo "您没有权限删除该权限"; } }
Langkah 4: Laksanakan fungsi melihat dan menyunting akaun
Akhir sekali, kita perlu melaksanakan fungsi melihat dan menyunting akaun. Pengguna boleh melihat akaun yang mereka mempunyai kebenaran dan mengubah suai akaun.
// 显示账目列表 $getAccountsQuery = "SELECT a.id, a.title, a.description, a.amount FROM accounts a, permissions p WHERE p.user_id = '$currentUserId' AND p.account_id = a.id"; $getAccountsResult = mysqli_query($con, $getAccountsQuery); while ($row = mysqli_fetch_assoc($getAccountsResult)) { echo "账目标题:" . $row['title'] . "<br>"; echo "账目描述:" . $row['description'] . "<br>"; echo "账目金额:" . $row['amount'] . "<br>"; echo "<br>"; } // 编辑账目 if (isset($_POST['edit_account'])) { $account_id = $_POST['account_id']; $title = $_POST['title']; $description = $_POST['description']; $amount = $_POST['amount']; // 检查用户是否有权限编辑该账目 $checkPermissionQuery = "SELECT id FROM permissions WHERE account_id = '$account_id' AND user_id = '$currentUserId'"; $checkPermissionResult = mysqli_query($con, $checkPermissionQuery); if (mysqli_num_rows($checkPermissionResult) > 0) { // 更新账目信息 $updateAccountQuery = "UPDATE accounts SET title = '$title', description = '$description', amount = '$amount' WHERE id = '$account_id'"; mysqli_query($con, $updateAccountQuery); echo "账目编辑成功"; } else { echo "您没有权限编辑该账目"; } }
Melalui contoh kod di atas, kita boleh melaksanakan sistem perakaunan yang mudah dan menambah fungsi kolaborasi berbilang pengguna. Pengguna boleh mendaftar, log masuk, melihat akaun, mengedit akaun, dan menambah serta memadam kebenaran ke akaun pengguna lain.
Walaupun ini hanyalah contoh asas, ia boleh membuka pintu untuk anda melaksanakan sistem perakaunan yang lebih kompleks dan berkuasa. Harap artikel ini membantu anda!
Atas ialah kandungan terperinci Bagaimana untuk menambah fungsi kerjasama berbilang pengguna pada sistem perakaunan - Bagaimana untuk membangunkan kerjasama berbilang pengguna menggunakan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!