上一篇
想象你开了一家叫"代码咖啡"的小店,生意越来越好,手工记录订单已经力不从心,这时候,你需要一个数据库系统来管理顾客信息、订单记录和库存数据,PHP和MySQL这对黄金搭档就能完美解决这个问题!
<?php $servername = "localhost"; // 数据库服务器地址 $username = "root"; // 数据库用户名 $password = ""; // 数据库密码 $dbname = "code_coffee"; // 数据库名 // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接 if ($conn->connect_error) { die("连接失败啦 😢: " . $conn->connect_error); } echo "成功连接到数据库! 🎉"; ?>
场景:新顾客"张三"加入会员系统
$sql = "INSERT INTO customers (name, phone, points) VALUES ('张三', '13800138000', 100)"; if ($conn->query($sql) === TRUE) { echo "新顾客记录创建成功! 👋"; } else { echo "出问题啦: " . $sql . "<br>" . $conn->error; }
场景:查看所有VIP顾客(积分大于500)
$sql = "SELECT id, name, phone, points FROM customers WHERE points > 500"; $result = $conn->query($sql); if ($result->num_rows > 0) { echo "<h3>我们的VIP顾客:</h3>"; echo "<ul>"; while($row = $result->fetch_assoc()) { echo "<li>#" . $row["id"]. " - " . $row["name"]. " (电话: " . $row["phone"]. ") - 积分: " . $row["points"]. "</li>"; } echo "</ul>"; } else { echo "暂时没有VIP顾客哦~ 加油推广吧! 💪"; }
场景:顾客"张三"消费获得了50积分
$sql = "UPDATE customers SET points = points + 50 WHERE name = '张三'"; if ($conn->query($sql) === TRUE) { echo "张三的积分已更新! 👍"; } else { echo "更新失败: " . $conn->error; }
场景:顾客"李四"要求注销会员
$sql = "DELETE FROM customers WHERE name = '李四'"; if ($conn->query($sql) === TRUE) { echo "李四的会员记录已删除. 再见啦~ 👋"; } else { echo "删除时出错: " . $conn->error; }
为了防止SQL注入,我们应该使用预处理语句:
// 准备预处理语句(新增顾客) $stmt = $conn->prepare("INSERT INTO customers (name, phone, points) VALUES (?, ?, ?)"); $stmt->bind_param("ssi", $name, $phone, $points); // s=字符串, i=整数 // 设置参数并执行 $name = "王五"; $phone = "13900139000"; $points = 200; $stmt->execute(); echo "新顾客添加成功,ID是: " . $stmt->insert_id; $stmt->close();
// 创建订单表(如果不存在) $sql = "CREATE TABLE IF NOT EXISTS orders ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, customer_id INT(6) NOT NULL, coffee_type VARCHAR(30) NOT NULL, size VARCHAR(10) NOT NULL, price DECIMAL(10,2) NOT NULL, order_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP )"; if ($conn->query($sql) === TRUE) { echo "订单表就绪! 📊"; } else { echo "创建表时出错: " . $conn->error; } // 插入新订单 $stmt = $conn->prepare("INSERT INTO orders (customer_id, coffee_type, size, price) VALUES (?, ?, ?, ?)"); $stmt->bind_param("issd", $cid, $type, $size, $price); $cid = 1; // 顾客ID $type = "拿铁"; // 咖啡类型 $size = "大杯"; // 规格 $price = 28.00; // 价格 $stmt->execute(); echo "新订单已记录! 订单号: " . $stmt->insert_id;
错误处理:开发时开启错误报告
error_reporting(E_ALL); ini_set('display_errors', 1);
关闭连接:脚本结束时记得关闭数据库连接
$conn->close();
批量插入:提高大量数据插入效率
$sql = "INSERT INTO customers (name, phone) VALUES ('顾客1', '11111111111'), ('顾客2', '22222222222'), ('顾客3', '33333333333')";
通过这篇指南,你已经掌握了PHP操作MySQL数据库的核心CRUD操作!从简单的增删改查到预处理语句的安全使用,再到完整的咖啡店订单系统示例,这些技能足够你开发大多数数据驱动的Web应用了。
数据库操作是Web开发的基石,多练习才能熟练掌握,现在就去为你的"代码咖啡"店实现一个完整的管理系统吧!当你看到数据流畅地进出数据库时,那种感觉比喝到一杯完美的拿铁还要棒哦~ ☕💻 更新至2025年8月,采用PHP 8.x和MySQL 8.x版本验证*
本文由 掌安彤 于2025-08-02发表在【云服务器提供商】,文中图片由(掌安彤)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/511590.html
发表评论