《PHP MySQL 记帐》正文开始,本次阅读大概8分钟。
在企业管理中,账目的记录非常重要,以便实现企业的财务管制。许多管理软件都支持记账功能以方便用户进行日常帐单统计。本文将介绍如何使用 PHP 和 MySQL 来创建一个简单而有效的记账程序,帮助用户轻松地记录和管理帐单。
创建 MySQL 表格
首先,需要在 MySQL 数据库中创建一个表格来存储帐单数据。具体来说,本次实验使用以下字段:
CREATE TABLE bills ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, date DATE NOT NULL, title VARCHAR(50) NOT NULL, category VARCHAR(50) NOT NULL, amount FLOAT(10, 2) NOT NULL );
这个表格有五个字段:id 是一个自增的唯一标识符,date 是帐单日期,title 是帐单的名称,category 是帐单的类型,amount 是帐单的金额。其中,id 的数据类型为 INT,可以存储最大 2147483647,即可以容纳近 20 天的数据;date 指定了一个日期数据类型,并设置了 NOT NULL 约束意味着日期必须是有效的;title 和 category 字段用于存储帐单的类型和名称,也必须是 NOT NULL;而 amount 字段则是存储帐单的金额。
创建 PHP 收集表单数据
在 PHP 中,可以使用 $_POST 和 $_REQUEST 变量来收集表单数据。无论您选择哪个变量,为了防止脚本受到恶意攻击,您需要使用 PHP 的 htmlspecialchars() 函数处理所有输入数据。下面是一个简单的 HTML 表单,用于收集帐单数据:
form method="post" action="addbill.php" label for="date"Date:/label input type="date" id="date" name="date" required label for="title"Title:/label input type="text" id="title" name="title" required maxlength="50" label for="category"Category:/label input type="text" id="category" name="category" required maxlength="50" label for="amount"Amount:/label input type="number" id="amount" name="amount" required step=".01" input type="submit" value="Submit" /form
在这个表单中,我们使用了 type 属性来定义输入字段的类型,这将有助于浏览器验证数据的正确性。当用户提交此表单时,数据将通过自动创建的 $_POST 数组发送到 PHP 脚本。
连接 MySQL 和 PHP 插入新数据
连接 MySQL 数据库和执行 SQL 查询都需要使用 PHP 中的 mysqli 函数。使用以下代码进行连接:
//数据库主机名,可在网页服务器主机数获得 $hostname = ''; //用户名,可以通过 MySQL 控制台查看 $username = ''; //密码,可以通过 MySQL 控制台查看 $password = ''; //数据库名,可以在 MySQL 控制台中查看 $dbname = ''; //连接 MySQL $conn = mysqli_connect($hostname, $username, $password, $dbname); if (!$conn) { die("Connection failed: " . mysqli_connect_error()); }
当连接成功时,将会创建一个全局数据库连接变量 $conn,可以将其用于后续所有数据库执行。
下面是往 bills 表格中插入新数据的示例代码:
// 获取表单数据并处理 $date = htmlspecialchars($_POST['date']); $title = htmlspecialchars($_POST['title']); $category = htmlspecialchars($_POST['category']); $amount = htmlspecialchars($_POST['amount']); // 插入数据 $sql = "INSERT INTO `bills` (`date`, `title`, `category`, `amount`) VALUES ('$date', '$title', '$category', '$amount')"; if (mysqli_query($conn, $sql)) { echo "New record created successfully"; } else { echo "Error: " . $sql . "" . mysqli_error($conn); }
这个代码通过处理 $_POST 数据并将其插入 bills 表格。当插入数据成功时,该脚本将输出消息 "New record created successfully"。
使用 PHP 和 MySQL 显示帐单数据
可以通过在 PHP 中执行 SELECT 查询来从 MySQL 中检索帐单数据,并可以使用 HTML 表格来显示结果。下面是一个示例:
table tr thID/th thDate/th thTitle/th thCategory/th thAmount/th /tr //从数据库中查询数据 $sql = "SELECT * FROM bills"; $result = mysqli_query($conn, $sql); //遍历结果并输出表格行 while($row = mysqli_fetch_assoc($result)) { echo "tr"; echo "td".$row["id"]."/td"; echo "td".$row["date"]."/td"; echo "td".$row["title"]."/td"; echo "td".$row["category"]."/td"; echo "td".$row["amount"]."/td"; echo "/tr"; } echo "/table";
这个代码中,首先查询了 bills 表格,并使用 mysqli_fetch_assoc() 函数将结果集转换为 PHP 关联数组。然后在 while 循环中通过使用 echo 语句将结果输出为 HTML 表格行。
总结
在本文中,我们学习了如何使用 PHP 和 MySQL 创建一个简单的记账程序。使用表单收集数据,然后使用 mysqli 函数将数据插入数据库。然后,我们通过 SELECT 查询检索数据,并使用 HTML 表格将其显示在网页上。
请注意,在实际应用程序中,可能需要更多的安全和功能性,这只是一个例子。总之,使用 PHP 和 MySQL 学习数据存储和填写的技能对于网站和应用程序的开发都是非常重要的。