确保两个服务是打开的,分别是Apache_pn(阿帕奇服务器的服务)、MySQL5_pn(数据库服务)。
接着,输入网址:http://127.0.0.1/phpmyadmin/
显示数据库的登录界面
进入数据库
新建数据库
新建数据表
创建字段
插入值
最终效果
①先写一个商品首页的文件,样式用的是angular.js框架的样式。
<?php require_once "database.php"; ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>商品首页</title> <link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.5.3/css/bootstrap.min.css" rel="stylesheet"> </head> <body> <table class="table"> <thead> <tr> <th>商品名称</th> <th>商品价格</th> <th>商品数量</th> <th>商品备注</th> <th>操作</th> </tr> </thead> <tbody> <?php //查询所有数据的sql语句 $sql = "SELECT * FROM `product`"; //执行sql语句 $result = $conn->query($sql); ?> <?php while($row = $result -> fetch_assoc()){ // var_dump($row); ?> <tr> <td><?php echo $row["p_name"];?></td> <td><?php echo $row["price"];?></td> <td><?php echo $row["p_count"];?></td> <td><?php echo $row["remark"];?></td> <td> <a href="edit.php?id=<?php echo $row['id'];?>">编辑</a> <a href="delete.php?id=<?php echo $row['id']?>">删除</a> </td> </tr> <?php } ?> </tbody> </table> <div class="text-center"> <a href="add.html">添加新商品</a> </div> </body> </html>
②再写一个连接数据库的文件。
<?php //利用面向对象的方法连接数据库 $conn = new mysqli("localhost","root","123456","product_db"); //判断 if($conn->connect_error){ die("连接失败"); } //转换编码格式 $conn ->query("set names utf8"); ?>
③再写一个删的文件,连接数据库文件,执行删除的sql语句。
<?php $id = $_GET["id"]; require_once "database.php"; //删除的sql $sql="DELETE FROM `product_db`.`product` WHERE `product`.`id` = $id"; //执行sql $conn -> query($sql); //回到首页 header("Location:index.php"); ?>
④再写2个添加的文件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>添加新商品</title> </head> <body> <form action="add.php" method="get"> <input name="n" type="text" placeholder="商品名称"> <input name="j" type="text" placeholder="商品价格"> <input name="s" type="text" placeholder="商品数量"> <textarea name="b" cols="30" rows="10"></textarea> <input type="submit" value="添加"> </form> </body> </html>
<?php //名称 $n=$_GET["n"]; //价格 $j=$_GET["j"]; //数量 $s=$_GET["s"]; //备注 $b=$_GET["b"]; //连接数据库 require_once "database.php"; //插入语句 $sql = "INSERT INTO `product`(`id`,`p_name`,`price`,`p_count`,`remark`) VALUES(NULL,'$n','$j','$s','$b');"; //执行插入语句 $conn->query($sql); //回到首页 header("location:index.php"); ?>
⑤再写一个编辑的文件
<?php $id = $_GET["id"]; require_once "database.php"; //根据id查到当前商品是谁 $sql = "SELECT * FROM `product` WHERE `id`= $id "; //查询 $result = $conn->query($sql); //得到商品的具体信息 $res = $result -> fetch_assoc(); //var_dump($res); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>商品编辑页</title> </head> <body> <form action="update.php" method="get"> <input hidden name="i" value="<?php echo $res['id'] ?>" type="text"> <input name="n" type="text" value="<?php echo $res['p_name'];?>" placeholder="商品名称"> <input name="j" type="text" value="<?php echo $res['price'];?>"placeholder="商品价格"> <input name="s" type="text" value="<?php echo $res['p_count'];?>"placeholder="商品数量"> <textarea name="b" cols="30" rows="10"><?php echo $res['remark'];?></textarea> <input type="submit" value="更新商品信息"> </form> </body> </html>
⑥再写一个更新的文件。
<?php //id $i=$_GET["i"]; //名称 $n=$_GET["n"]; //价格 $j=$_GET["j"]; //数量 $s=$_GET["s"]; //备注 $b=$_GET["b"]; require_once "database.php"; //更新语句 $sql = "UPDATE `product` SET `p_name` = '$n',`price`='$j',`p_count`='$s',`remark` = '$b' WHERE `product`.`id` = $i;"; //执行更新语句 $conn->query($sql); //回到首页 header("location:index.php") ?>
注意事项:要把shop整个项目放在htdocs目录下,不然会出现错误。
用cmd命令查询端口号
C:\Users\HP>d: D:\>cd D:\phpNow\MySQL-5.0.90\bin D:\phpNow\MySQL-5.0.90\bin>mysql -u root -p mysql> status //查看端口号
Fatal error: Class 'mysqli' not found in D:\phpNow\htdocs\shop\database.php on line 3
翻译之后
在D: phpNow\htdocs\shop\database.php第3行中没有找到Class 'mysqli
在PHPnow中找到php-apache2handler.ini文件,用记事本打开,去掉;extension=php_mysqli.dll前面的分号。(可以利用记事本的查找功能实现快速查找)
在搜索框输入文件名,可以快速找到文件。
中文变成“???”的解决方案:在连接接数据库时,我们可以进行转码。
//转换编码格式 $conn ->query("set names utf8");
https://www.bootcdn.cn/
https://download.csdn.net/download/William_fang/23546537