整理实例商品信息管理系统.docx
- 文档编号:15096248
- 上传时间:2023-06-30
- 格式:DOCX
- 页数:16
- 大小:327.82KB
整理实例商品信息管理系统.docx
《整理实例商品信息管理系统.docx》由会员分享,可在线阅读,更多相关《整理实例商品信息管理系统.docx(16页珍藏版)》请在冰点文库上搜索。
整理实例商品信息管理系统
实例—商品信息管理系统
一、实现目标:
利用php实现商品信息的增、删、改、查操作
重点难点:
图片信息的操作(图片的上传和读取)
二、知识点:
文件(图片)的上传
数据库的基本操作(增删改查)
三、网页效果:
四、实现步骤:
1.设计并创建数据库db_shop与表格tb_goods
利用phpmyadmin创建
相应的sql语句:
CREATETABLEIFNOTEXISTS`tb_goods`(
`id`int(10)unsignedNOTNULLAUTO_INCREMENTCOMMENT'编号',
`name`varchar(64)NOTNULLCOMMENT'商品名称',
`typeid`int(10)unsignedNOTNULLCOMMENT'类型',
`price`double(6,2)unsignedNOTNULLCOMMENT'价格',
`total`int(10)unsignedNOTNULLCOMMENT'库存',
`pic`varchar(32)NOTNULLCOMMENT'图片',
`note`textCOMMENT'描述',
`addtime`int(10)unsignedNOTNULLCOMMENT'发布时间',
PRIMARYKEY(`id`)
)ENGINE=MyISAMDEFAULTCHARSET=gb2312COMMENT='商品信息表'AUTO_INCREMENT=1;
2.项目的目录文件结构
3.创建公共配置文件dbconfig.php。
以及图片上传目录uploads文件夹。
php
//数据库配置信息文件
//数据库基本信息
define("HOST","localhost");//主机名
define("USER","root");//用户名
define("PASS","root");//密码
define("DBNAME","db_shop");//数据库名
//商品类型列表
$typelist=array(1=>"服装",2=>"数码",3=>"食品");
//设置标准时间
date_default_timezone_set("Etc/GMT-8");
//链接数据库
$link=mysql_connect(HOST,USER,PASS)ordie("数据库服务器连接错误".mysql_error());
mysql_select_db(DBNAME,$link)ordie("数据库访问错误".mysql_error());
mysql_query("setnamesgb2312");
?
>
4.创建导航栏menu.php。
body,td,th{
font-size:
12px;
color:
#33F;
}
商品信息管理系统
|
|
5.商品发布页面(表单)add.php。
新建表单,提交到action.php处理。
可以在凡是用到导航栏的页面,通过include或者require函数导入包含的文件。
phpinclude("menu.php");//导入导航栏
include("dbconfig.php");//数据库链接?
>
表单的设置,由于要上传图片,因此设置编码类型。
action=add"method="post"enctype="multipart/form-data"name="form1"id="form1"> (参考手册,注意POST文件上传的方法) 可通过7行2列表格进行定位,再插入相应的表单元素。 其中,类型为“选择菜单”,图片为文件域,描述是文本区域。 并为每个表单元素作好命名,名字可与数据表一致。 商品类型的名字和值的设置,可利用数组的键值对形式输出,代码如下, php foreach($typelistas$k=>$v){ echo" }? > 注: 可以通过js代码防止用户提交空值。 6.创建action.php,用于执行商品信息的增删改操作。 Action页面具有数据库的添加、删除、修改的功能。 通过url传递一个参数,来进行相应的增删改查操作。 具体步骤: ●导入相关文件,数据库链接; require("functions.php"); require("dbconfig.php"); ●获取action参数的值,并做相应的操作; switch($_GET["action"]){ case"add": //添加 break; case"del": //删除 break; case"update": //修改 break; } ●关闭数据库; mysql_close($link); 7.添加商品信息的步骤: ●获取表单信息; $name=$_POST["name"]; $typeid=$_POST["typeid"]; $total=$_POST["total"]; $price=$_POST["price"]; $note=$_POST["note"]; $addtime=time(); ●验证信息的合法性; if(empty($name)){ die("添加失败! 请输入商品名称"); } 同理,可以增加其他参数的判断。 ●执行图片上传; //产生随机名字 $fileinfo=pathinfo($_FILES['pic']['name']); do{ $newfile=date("YmdHis").rand(1000,9999).".".$fileinfo["extension"]; }while(file_exists($newfile)); //设置上传目录 $path='./uploads/'; move_uploaded_file($_FILES['pic']['tmp_name'],$path."/".$newfile); //echo$path.$newfile; ●利用sql语句把网页数据添加到数据库; $sql="INSERTINTO`db_shop`.`tb_goods`(`name`,`typeid`,`price`,`total`,`pic`,`note`,`addtime`)VALUES('$name','$typeid','$price','$total','$newfile','$note','$addtime')"; mysql_query($sql,$link); ●判断是否成功并返回结果; if(mysql_insert_id($link)>0){ echo"商品发布成功! "; }else{ echo"商品发布失败! ".mysql_error(); } echo" 8.商品浏览网页index.php。 创建一个7列2行的表格,输入相应的内容。 9.在要输出循环的行前后分别添加代码: php//执行商品查询 $sql=mysql_query("SELECT*FROM`tb_goods"); $row=mysql_fetch_object($sql); if(! $row){ echo" "; } do{ ? > 第二行的代码: phpecho$row->name;? > phpecho" > phpecho$row->price;? > phpecho$row->total;? > phpecho$row->typeid;? > phpechodate("Y-m-dH: i: s",$row->addtime);? >删除修改
第二行后添加代码:
php
}while($row=mysql_fetch_object($sql));
mysql_free_result($sql);
mysql_close($link);
?
>
10.增加删除功能。
在index页面,给删除添加链接,链接到action页面处理。
需要利用url传递三个参数。
分别是action的动作标识del,记录的编号id,图片的名称pic。
action=del&id= phpecho$row->id;? >&picname= phpecho$row->pic;? >">删除 在action页面添加删除的操作,代码: case"del": //删除 //执行删除记录的sql语句 $sql=mysql_query("deletefromtb_goodswhereid=$_GET[id]"); if(mysql_affected_rows($link)>0){ unlink("./uploads/".$_GET[picname]); } header("Location: index.php"); break; unlink—删除文件 防止报错,可以在前面加“@”,如@unlink(); 11.增加修改功能。 在index页面,给修改添加链接,链接到edit.php页面处理,使用url传递id参数即可。 id= phpecho$row->id;? >">修改 直接拿add.php页面另存为edit.php页面,把页面相关的文字改为修改。 添加代码: php include("menu.php");//导入导航栏 include("dbconfig.php");//数据库链接 //通过sql读取当前id对应的记录 $sql=mysql_query("SELECT*FROMtb_goodswhereid=$_GET[id]"); //判断是否取得要编辑的商品信息 if($sql&&mysql_num_rows($sql)>0){ $row=mysql_fetch_object($sql); }else{ die("没有商品信息。 "); } ? > 在名称表单的值处输入: phpecho$row->name;? > 类型选择的表单代码: php foreach($typelisttas$k=>$v){ $sd=($row->typeid==$k)? "selected": "";//是否当前类型 echo" }? > 12.添加显示对应的图片。 先把要修改的图片读取到网页中。 在edit.php页面表单中,添加一行,用于显示修改的图片。 代码: phpecho"./uploads/".$row->pic;? >"width="100"height="80"/> 13.在edit.php页面表单提交到action处理,通过url传递参数,带处理标识为update。 action=update"method="post"enctype="multipart/form-data"name="form1"id="form1"> 除此之外,还应该在edit.php页面表单中,添加隐藏域,传递当前记录的id号和原图片的名称。 phpecho$row->id;? >"/> phpecho$row->pic;? >"/> 通过查看edit.php输出源文件观看效果。 14.修改action页面的update操作。 编写的思路: ●获取表单中要修改的信息; ●验证信息的合法性; ●先判断是否有新突破,再执行新图片上传; ●利用sql语句修改数据库的记录; ●判断是否成功并返回结果; 代码如下: case"update": //修改 //1.获取表单中要修改的信息; $name=$_POST["name"]; $typeid=$_POST["typeid"]; $total=$_POST["total"]; $price=$_POST["price"]; $note=$_POST["note"]; $id=$_POST["id"]; $oldpic=$_POST["oldpic"]; $newfile=$oldpic; //2.验证信息的合法性; if(empty($name)){ die("商品信息为空"); } //3.先判断是否有新突破,再执行新图片上传; //产生随机名字 if(! empty($_FILES['pic']['name'])){ unlink("./uploads/".$oldpic); $fileinfo=pathinfo($_FILES['pic']['name']); do{ $newfile=date("YmdHis").rand(1000,9999).".".$fileinfo["extension"]; }while(file_exists($newfile)); //设置上传目录 4.将环境影响价值纳入项目的经济分析$path="./uploads/"; 表三: 周围环境概况和工艺流程与污染流程;move_uploaded_file($_FILES['pic']['tmp_name'],$path."/".$newfile); (3)环境影响评价中应用环境标准的原则。 } 2.辨识与分析危险、有害因素//4.利用sql语句修改数据库的记录; $sql="UPDATEtb_goodsSETname='$name',typeid='$typeid',price='$price',total='$total',pic='$newfile',note='$note'WHEREid=$id"; 2.环境影响评价工作等级的划分依据//echo$sql; 2.环境影响评价技术导则mysql_query($sql,$link); B.可能造成重大环境影响的建设项目,应当编制环境影响报告书//5.判断是否成功并返回结果; if(mysql_affected_rows($link)>0){ (3)旅行费用法echo"商品修改成功! "; 环境的两个特点: }else{ (1)安全预评价。 echo"商品修改不成功! ".mysql_error(); } echo" break; 15.修改index页面。 当没有记录时,显示 将第二行的代码修改如下: php//执行商品查询 $sql=mysql_query("SELECT*FROMtb_goodsorderbyaddtimedesc"); while($row=mysql_fetch_assoc($sql)){ echo" echo" echo" echo" echo" echo" echo" i: s",$row['addtime'])." echo" action=del&id={$row['id']}&picname={$row['pic']}'>删除 id={$row['id']}'>修改 echo" } mysql_free_result($sql); mysql_close($link); ? > 完 如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。 "; {$row['name']} "; ";{$row['price']} ";{$row['total']} ";{$row['typeid']} ";".date("Y-m-dH: "; ";";