文章教程

11.5.1商品分类管理页面

9/17/2020 9:38:49 PM 人评论 次浏览

11.5 商品分类管理模块设计

商品分类管理模块可以添加、修改和删除商品分类记录。

只有管理用户才有权限进入商品分类管理模块。在 Admin\Index.php 中,单击“商品分类”超链接,可以打开分类管理页面TypeList.php。

11.5.1 商品分类管理页面

打开商品分类管理界面,如图11-7所示。

figure_0240_0313

图11-7 商品分类管理

下面将介绍TypeList.php中与界面显示相关的部分代码。

1.显示商品分类信息

为了便于管理商品分类,TypeList.php 以表格的形式显示商品分类名称,并在后面显示修改和删除超链接。代码如下:

<table border="1" cellspacing="0" width="90%"  bordercolorlight="#4DA6FF"bordercolordark="#ECF5FF">

<tr>

<td width="30%" align="center" bgcolor="#eeeeee"><strong>分类名称</strong></td>

<td width="20%" align="center" bgcolor="#eeeeee"><strong>修改</strong></td>

<td width="20%" align="center" bgcolor="#eeeeee"><strong>删除</strong></td>

</tr>

<?PHP

//读取分类数据

$results = $objType->GetGoodsTypelist();

$exist = false;

//在表格中显示分类名称

while($row = $results->fetch_row())

{

$exist = true;

?>

<tr>

<td><? echo($row[1]); ?></td>

<td   align="center"><a   href="TypeList.php?Oper=update&tid=<?PHPecho($row[0]); ?>&name=<?PHP echo($row[1]); ?>">修改</a></td>

<td   align="center"><a   href="TypeList.php?Oper=delete&tid=<?PHPecho($row[0]); ?>&name=<?PHP echo($row[1]); ?>">删除</a></td>

</tr>

<?PHP } ?>

</table>

<p align="center">

<?PHP

if(!$exist) //如果记录集为空,则显示“目前还没有记录”

{

echo("<tr><td colspan=4 align=center><font style='COLOR:Red'>目前还没有记录。</font></td></tr></table>");

}

?>

</form>

“修改”超链接的定义代码如下:

<a href="TypeList.php?Oper=update&tid=<?PHP echo($row[0]); ?>&name=<?PHPecho($row[1]); ?>">修 改</a>

可以看到,修改商品分类的页面也是TypeList.php。参数Oper的值为update,表示当前操作为修改商品分类;参数tid表示要修改的商品分类编号;参数name表示要修改的商品分类名称。“删除”超链接的定义代码如下:

<a href="TypeList.php?Oper=delete&tid=<?PHP echo($row[0]); ?>&name=<?PHPecho($row[1]); ?>">删 除</a>

删除商品分类的页面也是TypeList.php。参数Oper的值为delete,表示当前操作为删除商品分类;参数tid表示要删除的商品分类编号;参数name表示要删除的商品分类名称。

2.添加或修改商品分类的表单

在商品分类表格的下面,将显示添加或修改商品分类的表单,包括一个文本框和一个按钮。当flag = update时,将显示修改商品分类的表单;否则显示添加商品分类的表单,如图11-8所示。

figure_0242_0314

图11-8 修改商品分类的表单

表单的代码如下:

<?PHP

//如果当前状态为修改,则显示修改的表单,否则显示添加的表单

if($Soperate=="update")

{

$sTitle=$_GET["name"];

?>

<form name="UFrom" method="post" action="TypeList.php?tid=<?PHP echo($Operid);?>&Oper=edit">

<div align="center">

<input type="hidden" name="sOrgTitle" value="<? echo($sTitle); ?>">

<font color="#FFFFFF"><b><font color="#000000">分类名称</font></b></font>

<input type="text" name="txttitle" size="20" value="<?PHP echo($sTitle); ?>">

<input type="submit" name="Submit" value="修改">

</div>

</form>

<?PHP }

else

{

?>

<form name="AForm" method="post" action="TypeList.php?Oper=add">

<p align="center">

<font color="#FFFFFF"><b><font color="#000000">添加分类:</font></b></font>

&nbsp;&nbsp;分类名称:&nbsp;&nbsp;<input type="text" name="txttitle" size="20">

<input type="hidden" name="sUpperId" value="0">&nbsp;&nbsp;

<input type="submit" name="Submit" value="添加" onclick="return form_onsubmit1 (this.form)">

</p>

</form>

<? } ?>

添加和修改商品分类的脚本都是TypeList.php,只是参数不同。当参数Oper等于edit时,程序将处理修改的商品分类数据;当参数Oper等于add时,程序将处理添加的商品分类数据。

11.5.2 添加商品分类

在执行 TypeList.php 时,如果参数 Oper 不等于 update,页面的下方将显示添加数据的表单Aform。在文本域txttitle中输入商品分类的名称,然后单击“添加”按钮,将调用TypeList.php,参数Oper等于add,表示插入新记录。下面将介绍相关的代码。

在打开TypeList.php页面时,可以在url中包含参数,程序将根据参数Oper的值决定进行的操作。与添加数据相关的代码如下:

<?PHP

include('..\Class\GoodsType.php');

include('..\Class\Goods.php');

$objType = new GoodsType();

$objGoods = new Goods();

//处理添加、修改和删除操作

$Soperate=$_GET["Oper"];

$Operid=$_GET["tid"];

//删除

if($Soperate=="delete")

{

……

}

elseif ($Soperate=="add") //添加

{

$Name=$_POST["txttitle"];

//判断是否已经存在此分类名称

if($objType->HaveGoodsType($Name))

{

echo("已经存在此分类名称!");

}

else

{

$objType->TypeName=$Name;

$objType->insert();

}

}

elseif ($Soperate=="edit")

{

……

}

?>

figure_0243_0315

在插入商品分类之前,应该调用$objType->HaveGoodsType()函数判断此商品分类是否已经存在。这样可以避免出现重复的商品分类。

11.5.3 修改商品分类

在 TypeList.php 中,单击商品分类后面的“修改”超链接,将再次执行 TypeList.php,参数Oper等于update。此时,页面的下方将显示修改数据的表单Uform。在文本域txttitle中输入商品分类的名称,然后单击“修改”按钮,将调用TypeList.php,参数Oper等于edit,表示修改记录。

下面将介绍相关的代码。

在打开TypeList.php时,可以在url中包含参数,程序将根据参数Oper的值决定进行的操作。与修改数据相关的代码如下:

<?

include('..\Class\GoodsType.php');

include('..\Class\Goods.php');

$objType = new GoodsType();

$objGoods = new Goods();

//处理添加、修改和删除操作

$Soperate=$_GET["Oper"];

$Operid=$_GET["tid"];

//删除

if($Soperate=="delete")

{

……

}

elseif ($Soperate=="add") //添加

{

……

}

elseif ($Soperate=="edit")

{

$Name=$_POST["txttitle"];

//判断是否已经存在此分类名称

if ($objType->HaveGoodsType($Name))

{

echo("已经存在此分类名称!");

}

else

{

$objType->TypeName=$Name;

$objType->update($Operid);

}

}

?>

figure_0244_0316

在修改商品分类之前,应该判断新的商品分类是否已经存在,这样可以避免出现重复的商品分类。

11.5.4 删除商品分类

在TypeList.php中,“删除”超链接的定义代码如下:

<a  href="TypeList.php?Oper=delete&tid=<?PHP  echo($row[0]);  ?>&name=<?echo($row[1]); ?>">删 除</a>

删除商品分类的页面也是TypeList.php。参数Oper的值为delete,表示当前操作为删除商品分类;参数tid表示要删除的商品分类编号;参数name表示要删除的商品分类名称。

与删除操作相关的代码如下:

//删除

if($Soperate=="delete")

{

//判断商品表中是否存在此分类

if ($objGoods->HaveGoodsType($Operid))

{

exit("此分类包含商品信息,不能删除!");

}

$objType->delete($Operid);

exit("分类已经成功删除!");

}

elseif ($Soperate=="add") //添加

{

……

}

elseif ($Soperate=="edit")

{

……

}

?>

程序首先调用$objGoods->HaveGoodsType($Operid)函数判断要删除的商品分类中是否包含商品信息,如果包含,则不允许删除;然后调用$objType->delete($Operid)函数删除指定的商品分类信息。

教程类别