用yii 1实现后台的搜索功能,效果如下图:

1.模型中:

 public function search()
{ $criteria = new CDbCriteria;
//独立高级搜索
if(isset( $_GET['goods']) ) {
//商品货号
if (isset($_GET['goods']['goods_sn']) && $_GET['goods']['goods_sn'] != "")
{
$criteria->compare('goods_sn',$_GET['goods']['goods_sn'], true );
}
//商品名称
if (isset($_GET['goods']['goods_name']) && $_GET['goods']['goods_name'] != "")
{
$criteria->compare('goods_name',$_GET['goods']['goods_name'], true);
}
//商品分类
if (isset($_GET['goods']['cat_id']) && $_GET['goods']['cat_id'] != "")
{
$criteria->compare('cat_id',$_GET['goods']['cat_id'], true);
}
//是否上架
if (isset($_GET['goods']['is_on_sale']) && $_GET['goods']['is_on_sale'] != "")
{
$criteria->compare('is_on_sale',$_GET['goods']['is_on_sale']);
}
//是否精品
if (isset($_GET['goods']['is_best']) && $_GET['goods']['is_best'] != "")
{
$criteria->compare('is_best',$_GET['goods']['is_best']);
}
//是否新品
if (isset($_GET['goods']['is_new']) && $_GET['goods']['is_new'] != "")
{
$criteria->compare('is_new',$_GET['goods']['is_new']);
}
//是否热销
if (isset($_GET['goods']['is_hot']) && $_GET['goods']['is_hot'] != "")
{
$criteria->compare('is_hot',$_GET['goods']['is_hot']);
} }
return new CActiveDataProvider($this, array(
'criteria'=>$criteria
));
}

2.控制器中:

$model=new B2cGoods('search');

表示在model中启用模型中的search作为搜索。

3.视图中:

<div class="well">
<div class="search-box">
<form class="form-inline" method="get" action="">
       //指定form表单提交的页面,很重要
<input type='hidden' name='r' value='B2CShop/b2cGoods/goodsList/id/<?php echo $id ?>'>
<div class="form-group">
<input
name="goods[goods_sn]"
type="text"
class="form-control"
style="width:140px;"
placeholder = "商品货号"
value=<?php echo $_GET['goods']['goods_sn'] ; ?>
>
</div>&nbsp; <div class="form-group">
<input
name="goods[goods_name]"
type="text"
class="form-control"
style="width:140px;"
placeholder = "商品名称"  
value=<?php echo $_GET['goods']['goods_name'] ; ?>
>
</div>&nbsp;&nbsp;
<div class="form-group">
<?php echo CHtml::dropDownList( "goods[cat_id]" ,
$_GET['goods']['cat_id'] ,
B2cCategory::listData( $id ) ,
array( "class"=>"form-control" , 'empty'=>'请选择类型...', 'encode' => false, "style"=>"width:140px") ); ?>
</div>&nbsp;&nbsp;
<div class="checkbox">
<label style="font-size: 16px">上架
<input
type="checkbox"
name="goods[is_on_sale]"
style="width: 24px;"
value="1"
                //实现checkbox,刷新页面保持原状态
<?php echo $_GET['goods']['is_on_sale']?'checked="checked"':'' ?>
>
</label>
</div>&nbsp;&nbsp;
<div class="checkbox">
<label style="font-size: 16px">精品
<input
type="checkbox"
name="goods[is_best]"
style="width: 24px;"
value="1"
<?php echo $_GET['goods']['is_best']?'checked="checked"':'' ?>
>
</label>
</div>&nbsp;&nbsp;
<div class="checkbox">
<label style="font-size: 16px">新品
<input
type="checkbox"
name="goods[is_new]"
style="width: 24px;"
value="1"
<?php echo $_GET['goods']['is_new']?'checked="checked"':'' ?>
>
</label>
</div>&nbsp;&nbsp;
<div class="checkbox">
<label style="font-size: 16px">热销
<input
type="checkbox"
name="goods[is_hot]"
style="width: 24px;"
value="1"
<?php echo $_GET['goods']['is_hot']?'checked="checked"':'' ?>
>
</label>
</div>
<button type="submit" class="btn btn-default"><span class="glyphicon glyphicon-search"></span>&nbsp;搜&nbsp;索</button>
</form>
</div>
</div>

这里需要注意的一点是实现checkbox,保持原状态,<?php echo $_GET['goods']['is_hot']?'checked="checked"':'' ?>,即用php判断是否有值。

Yii 1开发日记 -- 搜索功能及Checkbox的实现的更多相关文章

  1. Yii 1开发日记 -- 后台搜索功能下拉及关联表搜索

    Yii 1 实现后台搜索,效果如下: 一. 下拉搜索: 1.模型中和常规的一样 if (isset($_GET['agency']['status']) && $_GET['agenc ...

  2. Yii 1开发日记 -- Ajax实现点击加载下一页

    功能实现:先输出一页的内容,然后点击加载下一页,如图 1.控制器中 /** * 消费记录:列出用户购买章节的记录 */ public function actionMyPayHis() { //点击加 ...

  3. iOS开发总结-搜索功能实现--使用SKTag

    TagsTableViewController.h 文件 #import <UIKit/UIKit.h> #import "personSearch.h" @inter ...

  4. (转)淘淘商城系列——商品搜索功能Dao实现

    http://blog.csdn.net/yerenyuan_pku/article/details/72909286 终于进入商品搜索功能的开发中了,本文我来教大家编写实现商品搜索功能的Dao层代码 ...

  5. PHP+mysql数据库开发搜索功能:中英文分词+全文检索(MySQL全文检索+中文分词(SCWS))

    PHP+mysql数据库开发类似百度的搜索功能:中英文分词+全文检索 中文分词: a)   robbe PHP中文分词扩展: http://www.boyunjian.com/v/softd/robb ...

  6. 后台商品搜索功能开发SQL

    在做后台的商品搜索功能开发时遇到了一些问题记录下来 版本一 <select id="SelectByNameAndParentId resultMap="Base_resul ...

  7. Java 开源办公开发平台 O2OA V5.4.0 发布 | 设计元素搜索功能上线

    O2OA V5.4.0版本此次更新的设计元素搜索功能,可以让用户在海量的脚本.页面.表单.视图等信息中迅速锁定有价值的信息,以便提高用户获取信息的效率.拥有此搜索功能后,在开发过程中,可以加速定位脚本 ...

  8. yii2组件之下拉框带搜索功能(yii-select2)

    简单的小功能,但是用起来还是蛮爽的.分享出来让更多的人有更快的开发效率,开开心心快乐编程. 如果你还没有使用过composer,你可就out了,看我的教程分享,composer简直就是必备神奇有木有. ...

  9. 【Android开发日记】之入门篇(六)——Android四大组件之Broadcast Receiver

    广播接受者是作为系统的监听者存在着的,它可以监听系统或系统中其他应用发生的事件来做出响应.如设备开机时,应用要检查数据的变化状况,此时就可以通过广播来把消息通知给用户.又如网络状态改变时,电量变化时都 ...

随机推荐

  1. Web Application Penetration Testing Local File Inclusion (LFI) Testing Techniques

    Web Application Penetration Testing Local File Inclusion (LFI) Testing Techniques Jan 04, 2017, Vers ...

  2. 蓝牙4.0(BLE)开发

    转载请注明出处 http://blog.csdn.net/pony_maggie/article/details/26740237 作者:小马 IOS学习也一段时间了,该上点干货了.前段时间研究了一下 ...

  3. java 的public private protected作用域

  4. Chrome 开发工具之Elements

    友情提示:全文图片高能,如使用手机阅读,请确保在wifi情况下或者流量充足.图片有点渣,也算辛苦做出来的,请别嫌弃- Elements面板主要展示当前页面的组织结构,在如今的应用程序中,HTML页面初 ...

  5. bootstrap在jsp中的应用

    http://www.bootcss.com/ 下载bootstrap的js,css文件: 在jsp中的应用: 第一步: 新建一个web项目 将bootstrap下载下来的文件放入WEB-INF下面的 ...

  6. idea maven scala

    http://docs.scala-lang.org/tutorials/scala-with-maven.html https://github.com/davidB/scala-archetype ...

  7. Net中对Object的定义

    如果你问一个.Net程序员什么是Object,他可能会信誓旦旦的告诉你"Object还不简单吗,就是所有类型的基类"这个答案是对的,但是不足以说明Object真正是什么 好在HTM ...

  8. sift特征源码

    先贴上我对Opencv3.1中sift源码的注释吧,虽然还有很多没看懂.先从detectAndCompute看起 void SIFT_Impl::detectAndCompute(InputArray ...

  9. Mac安装mysql

    ### 第一步 安装后一定要记住初始密码 ### 第二步 打开终端 cd /usr/local/mysql/bin ./mysql -u root -p #输入初始密码 set password = ...

  10. highcharts总结

    //tooptip此属性表达的是鼠标移那个位置显示的值 tooptip:{ formatter: function (){ //this.point.name 表达显示名字 //this.x 表达显示 ...