一.项目思路
1.连接数据库
确保两个服务是打开的,分别是Apache_pn(阿帕奇服务器的服务)、MySQL5_pn(数据库服务)。
接着,输入网址:http://127.0.0.1/phpmyadmin/
显示数据库的登录界面
进入数据库
2.新建数据库、数据表…
新建数据库
新建数据表 创建字段 插入值 最终效果
3.代码思路
①先写一个商品首页的文件,样式用的是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 = "SELECT * FROM `product`";
$result = $conn->query($sql);
?>
<?php
while($row = $result -> fetch_assoc()){
?>
<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="DELETE FROM `product_db`.`product` WHERE `product`.`id` = $id";
$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";
$sql = "SELECT * FROM `product` WHERE `id`= $id ";
$result = $conn->query($sql);
$res = $result -> fetch_assoc();
?>
<!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
$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目录下,不然会出现错误。
4.文件目录
二.查询端口号
用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 //查看端口号
三.常见错误
1.项目部署问题
错误分析
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前面的分号。(可以利用记事本的查找功能实现快速查找)
在搜索框输入文件名,可以快速找到文件。
2.中文变成“ ???”的问题
解决方案
中文变成“???”的解决方案:在连接接数据库时,我们可以进行转码。
$conn ->query("set names utf8");
四.框架网站
https://www.bootcdn.cn/
五.源码下载地址
https://download.csdn.net/download/William_fang/23546537
|