控制器   ---------------------GoodsController.class.php-------------------------------------------------
<?php
namespace Admin\Controller;
use Think\Controller;
class GoodsController extends Controller{
public function showlist1(){
// $goods=new GoodsModel();
// $goods=new \Model\GoodsModel();
//实例化model父类对象
$model=D(); //new Model();
var_dump($model);
$this->display();
}
public function showlist(){
$goods=new \Model\GoodsModel();
$info= $goods->order('goods_id desc')->select();
// var_dump($info);
$this->assign('info',$info);
$this->display();
}
public function tianjia(){
//声明一个数组进行添加
// $goods=new \Model\GoodsModel();
// $arr=array(
// 'goods_name'=>'samsungs6',
// 'goods_price'=>4800,
// 'goods_weight'=>130,
// 'goods_number'=>16,
// );
// $z= $goods->add($arr);
// dump($z);
$goods=D('Goods');
if(!empty($_POST)){
//收集表单
// dump($_POST);
$z=$goods->add($_POST);
if($z){
$this->redirect('showlist',, '添加商品成功');
} else {
$this->redirect('tianjia',,'添加商品失败');
}
} else {
//展示表单
$this->display();
} }
public function xiugai($goods_id){
$goods=D('Goods');
if(!empty($_POST)){
$z=$goods->save($_POST);
if($z){
$this->redirect('showlist',array(),, '修改商品成功');
} else {
$this->redirect('xiugai',array('goods_id'=>$goods_id),,'修改商品失败');
}
}else{
$info=$goods->find($goods_id);
$this->assign('info',$info);
$this->display();
}
}
}
                -------------------------Common中Conf的config.php的配置-------------------------------------------------------------
<?php
return array(
//'配置项'=>'配置值'
//smarty 模板引擎切换
// 'TMPL_ENGINE_TYPE' => 'Smarty',
/* 数据库设置 */
'DB_TYPE' => 'mysql', // 数据库类型
'DB_HOST' => 'localhost', // 服务器地址
'DB_NAME' => 'shop', // 数据库名
'DB_USER' => 'root', // 用户名
'DB_PWD' => '', // 密码
'DB_PORT' => '', // 端口3306
'DB_PREFIX' => 'sw_', // 数据库表前缀
'DB_PARAMS' => array(), // 数据库连接参数
'DB_DEBUG' => TRUE, // 数据库调试模式 开启后可以记录SQL日志
'DB_FIELDS_CACHE' => true, // 启用字段缓存
'DB_CHARSET' => 'utf8', // 数据库编码默认采用utf8 'TMPL_ENGINE_TYPE' => 'Smarty', // 默认模板引擎 以下设置仅对使用Think模板引擎有效
'TMPL_ENGINE_CONFIG' =>array(
// 'left_delimiter' =>'<@@',
// ' right_delimiter ' =>'@@>',
)
);
                                      ————————Model模型中GoodsModel.class.php的配置——————————

<?php
namespace Model;
use Think\Model;
//为goods表创建一个Model模型
//父类model为Think 下的
class GoodsModel extends Model{ }
                              -------Admin(后台)View(视图)中showlist.html页面的显示---------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> <title>会员列表</title> <link href="{$smarty.const.ADMIN_CSS_URL}mine.css" type="text/css" rel="stylesheet" />
</head>
<body>
<style>
.tr_color{ background-color: #9F88FF }
</style>
<div class="div_head">
<span>
<span style="float: left;">当前位置是:商品管理-》商品列表</span>
<span style="float: right; margin-right: 8px; font-weight: bold;">
<a style="text-decoration: none;" href="{$smarty.const.__CONTROLLER__}/tianjia">【添加商品】</a>
</span>
</span>
</div>
<div></div>
<div class="div_search">
<span>
<form action="#" method="get">
品牌<select name="s_product_mark" style="width: 100px;">
<option selected="selected" value="">请选择</option>
<option value="">苹果apple</option>
</select>
<input value="查询" type="submit" />
</form>
</span>
</div>
<div style="font-size: 13px; margin: 10px 5px;">
<table class="table_a" border="" width="100%">
<tbody><tr style="font-weight: bold;">
<td>序号</td>
<td>商品名称</td>
<td>库存</td>
<td>价格</td>
<td>图片</td>
<td>缩略图</td>
<td>品牌</td>
<td>创建时间</td>
<td align="center">操作</td>
</tr>
{foreach $info as $key =>$v}
<tr id="product1">
<td>{$v.goods_id}</td>
<td><a href="#">{$v.goods_name}</a></td>
<td>{$v.goods_number}</td>
<td>{$v.goods_price}</td>
<td><img src="{$smarty.const.ADMIN_IMG_URL}20121018-174034-58977.jpg" height="" width=""></td>
<td><img src="{$smarty.const.ADMIN_IMG_URL}20121018-174034-97960.jpg" height="" width=""></td>
<td>{$v.goods_brand_id}</td>
<td>{$v.goods_create_time|date_format:"%Y-%m-%d %T"}</td>
<td><a href="{$smarty.const.__CONTROLLER__}/xiugai/goods_id/{$v.goods_id}">修改</a></td>
<td><a href="javascript:;" onclick="delete_product(1)">删除</a></td>
</tr>
{/foreach}
<tr>
<td colspan="" style="text-align: center;">
[]
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
                          ----------------------------View中修改页面的实现-----------------------------

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>修改商品</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<link href="{$smarty.const.ADMIN_CSS_URL}/mine.css" type="text/css" rel="stylesheet">
</head> <body> <div class="div_head">
<span>
<span style="float:left">当前位置是:商品管理-》修改商品信息</span>
<span style="float:right;margin-right: 8px;font-weight: bold">
<a style="text-decoration: none" href="{$smarty.const.__CONTROLLER__}/showlist">【返回】</a>
</span>
</span>
</div>
<div></div> <div style="font-size: 13px;margin: 10px 5px">
<form action="{$smarty.const.__SELF__}" method="post" enctype="multipart/form-data">
<input type="hidden" name="goods_id" value="{$info.goods_id}"/>
<table border="" width="100%" class="table_a">
<tr>
<td>商品名称</td>
<td><input type="text" name="goods_name" value="{$info.goods_name}" /></td>
</tr>
<tr>
<td>商品分类</td>
<td>
<select name="goods_category_id">
<option>请选择</option>
<option>家用电器</option>
<option>手机数码</option>
<option>电脑办公</option>
<option>服饰鞋帽</option>
</select>
</td>
</tr>
<tr>
<td>商品品牌</td>
<td>
<select name="goods_brand_id">
<option>请选择</option>
<option>苹果</option>
<option>诺基亚</option>
<option>HTC</option>
<option>摩托罗拉</option>
</select>
</td>
</tr>
<tr>
<td>商品价格</td>
<td><input type="text" name="goods_price" value="{$info.goods_price}" /></td>
</tr>
<tr>
<td>商品图片</td>
<td><input type="file" name="goods_image" value="./img/2013-12-33.jpg" /></td>
</tr>
<tr>
<td>商品详细描述</td>
<td>
<textarea name="goods_introduce">{$info.goods_introduce}</textarea>
</td>
</tr> <tr>
<td colspan="" align="center">
<input type="submit" value="修改">
</td>
</tr>
</table>
</form>
</div>
</body>
</html>
                                ---------------------------View中添加页面的实现--------------------------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>添加商品</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<link href="{$smarty.const.ADMIN_CSS_URL}mine.css" type="text/css" rel="stylesheet">
</head> <body> <div class="div_head">
<span>
<span style="float:left">当前位置是:商品管理-》添加商品信息</span>
<span style="float:right;margin-right: 8px;font-weight: bold">
<a style="text-decoration: none" href="{$smarty.const.__CONTROLLER__}/showlist">【返回】</a>
</span>
</span>
</div>
<div></div> <div style="font-size: 13px;margin: 10px 5px">
<form action="{$smarty.const.__SELF__}" method="post" enctype="multipart/form-data">
<table border="" width="100%" class="table_a">
<tr>
<td>商品名称</td>
<td><input type="text" name="goods_name" /></td>
</tr>
<tr>
<td>商品分类</td>
<td>
<select name="f_goods_category_id">
<option value="">请选择</option>
{foreach from=$s_category_info key=_k item=_v}
<option value="{$_v.category_id}">{$_v.category_name}</option>
{/foreach}
</select>
</td>
</tr>
<tr>
<td>商品品牌</td>
<td>
<select name="f_goods_brand_id">
<option value="">请选择</option>
{foreach from=$s_brand_info key=_k item=_v}
<option value="{$_v.brand_id}">{$_v.brand_name}</option>
{/foreach}
</select>
</td>
</tr>
<tr>
<td>商品价格</td>
<td><input type="text" name="f_goods_price" /></td>
</tr>
<tr>
<td>商品图片</td>
<td><input type="file" name="f_goods_image" /></td>
</tr>
<tr>
<td>商品详细描述</td>
<td>
<textarea name="f_goods_introduce"></textarea>
</td>
</tr> <tr>
<td colspan="" align="center">
<input type="submit" value="添加">
</td>
</tr>
</table>
</form>
</div>
</body>
</html>

图为Netbeans IDE7.2下的购物商城的TP框架结构

ThinkPHP 购物商城网站(数据库中增删改查的功能实现)——————重点——————的更多相关文章

  1. Django基础学习四_数据库的增删改查

    今天主要学习两个东西 1.如何对数据库做增删改查 2.如果将数据库中的数据用html的方式返回到前台 一.对数据库中增删改查操作 1.首先需要先见表,见表的方法我们在“http://www.cnblo ...

  2. ThinkPHP实现对数据库的增删改查

    好久都没有更新博客了,之前老师布置的任务总算是现在可以说告一段落了,今天趁老师还没提出其他要求来更新一篇博客. 今天我想记录的是我之前做项目,自己所理解的ThinkPHP对数据库的增删改查. 首先要说 ...

  3. PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码

    PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...

  4. Android中Sqlite数据库进行增删改查

    今天这篇文章写Sqlite数据库,通过一个小案例来完整讲一下数据库常见的CRUD操作. 先对知识点总结: SQLite数据库 轻量级关系型数据库 创建数据库需要使用的api:SQLiteOpenHel ...

  5. [译]聊聊C#中的泛型的使用(新手勿入) Seaching TreeVIew WPF 可编辑树Ztree的使用(包括对后台数据库的增删改查) 字段和属性的区别 C# 遍历Dictionary并修改其中的Value 学习笔记——异步 程序员常说的「哈希表」是个什么鬼?

    [译]聊聊C#中的泛型的使用(新手勿入)   写在前面 今天忙里偷闲在浏览外文的时候看到一篇讲C#中泛型的使用的文章,因此加上本人的理解以及四级没过的英语水平斗胆给大伙进行了翻译,当然在翻译的过程中发 ...

  6. java程序设计课期中考试——数据库的增删改查和简单的js界面

    首先是设计思路,对于数据库的增删改查,我们借助Ecilipse来进行前端和后端的编写.Ecilipse是可以进行java web项目的操作的. 前端,我们选择用使用jsp,所谓的jsp就是可以嵌入其他 ...

  7. Mybatis学习笔记(二) 之实现数据库的增删改查

    开发环境搭建 mybatis 的开发环境搭建,选择: eclipse j2ee 版本,mysql 5.1 ,jdk 1.7,mybatis3.2.0.jar包.这些软件工具均可以到各自的官方网站上下载 ...

  8. python链接oracle数据库以及数据库的增删改查实例

    初次使用python链接oracle,所以想记录下我遇到的问题,便于向我这样初次尝试的朋友能够快速的配置好环境进入开发环节. 1.首先,python链接oracle数据库需要配置好环境. 我的相关环境 ...

  9. python代理池的构建4——mongdb数据库的增删改查

    上一篇博客地址:python代理池的构建3--爬取代理ip 一.mongdb数据库的增删改查(Mongo_pool.py) #-*-coding:utf-8-*- ''' 实现代理池的数据库模块 ●作 ...

随机推荐

  1. 哎呀,发现自己不会用模块的方式用kprobe啊,弱爆了

    在内核外面编译模块,会报warning函数名undefined的错误,解决方法是把函数给export出来:EXPORT_SYMBOL 一直以来,用kprobe比较多的是kprobe event的用法, ...

  2. 【转】【C#】C# 垃圾回收机制

    摘要:今天我们漫谈C#中的垃圾回收机制,本文将从垃圾回收机制的原理讲起,希望对大家有所帮助. GC的前世与今生 虽然本文是以.NET作为目标来讲述GC,但是GC的概念并非才诞生不久.早在1958年,由 ...

  3. performSelector:withObject:afterDelay: 精要概览(持续更新)

    - (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay; - ...

  4. C语言错误 BUG报错整理

    错误一 关键字:间接寻址级别不同 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> ...

  5. 未能加载文件或程序集“XXXXX”或它的某一个依赖项。试图加载格式不正确的程序。

    未能加载文件或程序集“FastColoredTextBox, Version=2.10.5.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项.试图加载 ...

  6. iOS开发之—— XCODE真机调试设备连接一直忙碌如何处理!(真机调试各种错误提示解决)

    真机调试,想连接真机调试代码可是连上设备后就一直转圈, 在Divice里面一直提示“iphone名称” is busy: Processing symbol files Xcode will cont ...

  7. JavaScript里面三个等号和两个等号有什么区别?

    1.对于string,number等基础类型,==和===是有区别的 a)不同类型间比较,==之比较“转化成同一类型后的值”看“值”是否相等,===如果类型不同,其结果就是不等 b)同类型比较,直接进 ...

  8. 常见面试第二题之什么是Context

    今天的面试题,也就是我们常见面试题系列的第二题,我们来讲一讲android中的context.我相信大家android开发者一定对于这个context非常熟悉,肯定都有使用过,肯定没有没使用过的.但是 ...

  9. Jmeter使用指南

    序言 由于公司在来年需要进行压力测试,所以也就借节假日的机会来学习一下压力测试的步骤,由于本人的学习时间比较短,希望各位大神朋友们能够多多的谅解并指正在下的错误,在此仅表敬意 适应人群 1.初入门的压 ...

  10. nginx自学

    需要了解的linux的命令: linux的命令:netstat -antnetstat -antp(天假了参数P)ps aux | grep 80kill -9 2985 号进程pkill -9 ht ...