如何實現記帳系統的報銷和審核功能- 使用PHP開發報銷和審核的方法,需要具體程式碼範例
在管理記帳系統中,報銷和審核是非常重要的功能之一。透過報銷功能,員工可以申請報銷費用,並提交相關的報銷單據;透過審批功能,管理人員可以對員工的報銷進行審核,並決定是否透過報銷申請。本文將介紹如何使用PHP開發報銷和審核功能,並提供具體的程式碼範例。
一、資料庫設計
首先,我們需要設計資料庫結構來儲存報銷和審核的相關資訊。以下是一個簡短的資料庫設計範例:
<form action="process-expense.php" method="POST"> <input type="text" name="amount" placeholder="报销费用"> <textarea name="description" placeholder="报销描述"></textarea> <button type="submit">提交</button> </form>
<?php // 连接数据库 $db = new PDO('mysql:host=localhost;dbname=your_database_name', 'username', 'password'); // 获取报销信息 $amount = $_POST['amount']; $description = $_POST['description']; // 插入报销数据 $query = "INSERT INTO expenses (user_id, amount, description, status, created_at) VALUES (?, ?, ?, 'pending', NOW())"; $stmt = $db->prepare($query); $stmt->execute([$_SESSION['user_id'], $amount, $description]); echo "报销申请已提交"; ?>
<?php // 连接数据库 $db = new PDO('mysql:host=localhost;dbname=your_database_name', 'username', 'password'); // 查询待审核的报销申请 $query = "SELECT * FROM expenses WHERE status = 'pending'"; $stmt = $db->query($query); $expenses = $stmt->fetchAll(PDO::FETCH_ASSOC); // 显示报销申请列表 foreach ($expenses as $expense) { echo "<p>报销费用:" . $expense['amount'] . "</p>"; echo "<p>报销描述:" . $expense['description'] . "</p>"; echo "<button onclick='approveExpense(" . $expense['id'] . ")'>通过</button>"; echo "<button onclick='rejectExpense(" . $expense['id'] . ")'>拒绝</button>"; } ?>
<?php // 连接数据库 $db = new PDO('mysql:host=localhost;dbname=your_database_name', 'username', 'password'); // 获取报销申请ID和审批状态 $expenseId = $_POST['expenseId']; $status = $_POST['status']; $comment = $_POST['comment']; // 更新报销数据状态 $query = "UPDATE expenses SET status = ?, updated_at = NOW() WHERE id = ?"; $stmt = $db->prepare($query); $stmt->execute([$status, $expenseId]); // 添加审批意见 $query = "INSERT INTO approvals (expense_id, approver_id, status, comment, created_at) VALUES (?, ?, ?, ?, NOW())"; $stmt = $db->prepare($query); $stmt->execute([$expenseId, $_SESSION['user_id'], $status, $comment]); echo "审批已完成"; ?>
以上是如何實現記帳系統的報銷和審批功能 - 使用PHP開發報銷和審批的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!