博客列表 >mysqli方式对商品表增删改查

mysqli方式对商品表增删改查

海阔天空
海阔天空原创
2020年05月08日 17:34:061028浏览

创建商品表goods

基本参数

  1. // 数据库默认主机
  2. 'host' => $host?? 'localhost',
  3. // 默认数据库
  4. 'dbname'=> $dbname ?? 'php11edu',
  5. // 默认字符编码集
  6. 'charset'=> $charset ?? 'utf8',
  7. // 默认端口号
  8. 'port'=> $port ?? '3306',
  9. // 默认的用户名
  10. 'username'=> $username ?? 'root',
  11. // 默认的用户密码
  12. 'password'=> $password ?? 'root123456',

查询

  1. 多条记录查询
  2. // 1. 连接数据库
  3. require 'connect1.php';
  4. // 2. 操作数据库
  5. $sql = "SELECT `id`, `name`,`region`,`stock` FROM `goods` WHERE `price` >4500";
  6. $mysqli_result = $mysqli->query($sql);
  7. if (!$mysqli_result){
  8. echo '查询失败!';
  9. die;
  10. }
  11. if ($mysqli_result && $mysqli_result->num_rows > 0 ) {
  12. echo "<table border='1' cellspacing='0' cellpadding='15'><tr><th>编号</th><th>商品名称</th><th>产地</th><th>库存</th></tr>";
  13. $goods = $mysqli_result->fetch_all();
  14. foreach ($goods as $good) {
  15. // vprintf() 与 printf()功能一样, 区别 就是参数是数组
  16. vprintf('<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>', $good);
  17. }
  18. echo '</table>';
  19. } else {
  20. echo '没有查询到符合条件的产品!';
  21. }
  22. // 3. 关闭连接
  23. // 释放结果集
  24. $mysqli_result->free_result();
  25. //关闭数据库连接
  26. $mysqli->close();


增加记录

  1. // 1. 连接数据库
  2. require 'connect1.php';
  3. // 2. 操作数据库
  4. $arr = ['美的空调1.5匹', '美的', 9600, '浙江温州', 340];
  5. array_walk($arr, function(&$item, $key) {
  6. if (gettype($item)==='string' ) $item = "'$item'";
  7. });
  8. $data = implode(', ', $arr);
  9. $sql = "INSERT `goods` (`name`,`brand`,`price`,`region`,`stock`) VALUES ($data)";
  10. // var_dump($mysqli);
  11. // die;
  12. if ($mysqli->query($sql)) {
  13. if ($mysqli->affected_rows > 0) {
  14. echo '成功添加了 ' . $mysqli->affected_rows . ' 条记录, 新增记录主键ID: ' . $mysqli->insert_id;
  15. } else {
  16. echo '没有添加新记录';
  17. }
  18. } else {
  19. die('添加失败'. $mysqli->errno . ' : ' . $mysqli->error);
  20. }
  21. // 3. 关闭连接
  22. // 断开数据库连接
  23. $mysqli->close();


更新记录

  1. // 1. 连接数据库
  2. require 'connect1.php';
  3. // 2. 操作数据库
  4. $arr = ['name'=>'美的空调2匹', 'price'=>10960];
  5. array_walk($arr, function(&$item, $key) {
  6. if (gettype($item)==='string' ){
  7. $item = "`$key`='$item'";
  8. }else{
  9. $item = "`$key`=$item";
  10. }
  11. });
  12. $data = implode(', ', $arr);
  13. // echo $data;
  14. // die;
  15. $sql = "UPDATE `goods` SET " . $data . " WHERE `id` = 12";
  16. if ($mysqli->query($sql)) {
  17. if ($mysqli->affected_rows > 0) {
  18. echo '成功更新了 ' . $mysqli->affected_rows . ' 条记录';
  19. } else {
  20. echo '没有更新任何记录';
  21. }
  22. } else {
  23. die('更新失败'. $mysqli->errno . ' : ' . $mysqli->error);
  24. }
  25. // 3. 关闭连接
  26. $mysqli->close();


删除记录

  1. // 1. 连接数据库
  2. require_once 'connect1.php';
  3. // 2. 操作数据库
  4. $sql = "DELETE FROM `goods` WHERE `id` =" . $_GET['id'];
  5. if ($mysqli->query($sql)) {
  6. if ($mysqli->affected_rows > 0) {
  7. echo '成功删除了 id=' .$_GET['id'] . ' 的记录';
  8. } else {
  9. echo '没有删除任何记录';
  10. }
  11. } else {
  12. die('删除失败'. $mysqli->errno . ' : ' . $mysqli->error);
  13. }
  14. // 3. 关闭连接
  15. $mysqli->close();



小结:
1、代码要写活,便于以后通过表单进行数据的交互。利用array_walk()函数,结合朱老师和
一位同学的方案,可以把增、删、改、查的sql语句写得比较灵活。
2、现在对表单的交互操作了解不深,下一步立争把增、删、改、查写在一个页面里,通过表单、按钮实现,给用户更好的交互体验。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议