laravel框架关于搜索功能的实现


Posted in PHP onMarch 15, 2018

这里的搜索功能主要基于表单get提交实现的

<form action="/backend/auditList" method="get">
  <table class="search_tab">
    <tr>
      <th width="120">选择分类:</th>
      <td>
        <select name="class" >
          <option value="">全部</option>
          @foreach($category as $c)
            <option value="{{$c->id}}">{{$c->class_name}}</option>
          @endforeach
        </select>
      </td>
      <th width="70">文章标题:</th>
      <!--查询关键词-->
      <td><input type="text" name="keywords" placeholder="文章标题"></td>
      <td><input type="submit" name="sub" value="查询"></td>
    </tr>
  </table>
</form>

php部分逻辑

public function article_list(){
  //echo 'zoule';exit; 测试表单是否走进方法中 大家随意写
  $shownum = 1;
  if(array_key_exists('class',$_GET)||array_key_exists('keywords',$_GET)){
   //echo '111'; 
   if($_GET['class']){
   //Article模型 leftJoin表连接 查询根据俩个表里的这些字段来执行
     $postdata = Article::leftJoin('category', function($join) {
      $join->on('article.class_id', '=', 'category.id');
     })->select(['article.id','category.class_name','article.status','article.title_editing','article.update_time'])->where('article.class_id','=',$_GET['class'])->orderBy('release_time','desc')->paginate($shownum);
   }elseif($_GET['keywords']){
     $postdata = Article::leftJoin('category', function($join) {
      $join->on('article.class_id', '=', 'category.id');
     })->select(['article.id','category.class_name','article.status','article.title_editing','article.update_time'])->where('article.title_editing','=',$_GET['keywords'])->orderBy('release_time','desc')->paginate($shownum);
    
   }else{
     $postdata = Article::leftJoin('category', function($join) {
      $join->on('article.class_id', '=', 'category.id');
     })->select(['article.id','category.class_name','article.status','article.title_editing','article.update_time'])->orderBy('release_time','desc')->paginate($shownum);
   }
  }else{
   //echo '2222';
   $postdata = Article::leftJoin('category', function($join) {
     $join->on('article.class_id', '=', 'category.id');
   })->select(['article.id','category.class_name','article.status','article.title_editing','article.update_time'])->orderBy('release_time','desc')->paginate($shownum);
  }
  //分类id不是父id
  $category = DB::table('category')->where('parent_id','!=','0')->get();
  //渲染页面 传递 参数
  return view('backend.article_list',['postdata'=>$postdata,'shownum'=>$shownum,'category'=>$category]);
}
PHP 相关文章推荐
mysql5写入和读出乱码解决
Nov 25 PHP
PHP+MYSQL 出现乱码的解决方法
Aug 08 PHP
最新的php 文件上传模型,支持多文件上传
Aug 13 PHP
用sql命令修改数据表中的一个字段为非空(not null)的语句
Jun 04 PHP
兼容性比较好的PHP生成缩略图的代码
Jan 12 PHP
PHP 解决session死锁的方法
Jun 20 PHP
zend framework文件上传功能实例代码
Dec 25 PHP
php分页函数示例代码分享
Feb 24 PHP
php使用fputcsv()函数csv文件读写数据的方法
Jan 06 PHP
nginx+thinkphp下解决不支持pathinfo模式
Jul 01 PHP
php提交post数组参数实例分析
Dec 17 PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
Jul 22 PHP
PHP实现浏览器中直接输出图片的方法示例
Mar 14 #PHP
PHP实现生成推广海报的方法详解
Mar 14 #PHP
PHP基于phpqrcode类生成二维码的方法详解
Mar 14 #PHP
PHP判断是否是微信打开,浏览器打开的方法
Mar 14 #PHP
Laravel模型事件的实现原理详解
Mar 14 #PHP
PHP实现根据数组某个键值大小进行排序的方法
Mar 13 #PHP
Laravel多用户认证系统示例详解
Mar 13 #PHP
You might like
php操作excel文件 基于phpexcel
2010/07/02 PHP
discuz程序的PHP加密函数原理分析
2011/08/05 PHP
php判断上传的Excel文件中是否有图片及PHPExcel库认识
2013/01/11 PHP
在Linux系统的服务器上隐藏PHP版本号的方法
2015/06/06 PHP
php生成4位数字验证码的实现代码
2015/11/23 PHP
详解WordPress中简码格式标签编写的基本方法
2015/12/22 PHP
编写PHP程序检查字符串中的中文字符个数的实例分享
2016/03/17 PHP
php面向对象之反射功能与用法分析
2017/03/29 PHP
Javascript实例教程(19) 使用HoTMetal(4)
2006/12/23 Javascript
Jquery替换已存在于element上的event的方法
2010/03/09 Javascript
AngularJS基础学习笔记之控制器
2015/05/10 Javascript
JQuery中DOM事件合成用法实例分析
2015/06/13 Javascript
js实现带有介绍的Select列表菜单实例
2015/08/18 Javascript
ANGULARJS中使用JQUERY分页控件
2015/09/16 Javascript
jQuery使用DataTable实现删除数据后重新加载功能
2017/02/27 Javascript
JS之if语句对接事件动作逻辑(详解)
2017/06/28 Javascript
Node.js服务器开启Gzip压缩教程
2017/08/11 Javascript
Vue Element使用icon图标教程详解(第三方)
2018/02/07 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
2019/07/13 Javascript
VueQuillEditor富文本上传图片(非base64)
2020/06/03 Javascript
js实现简单的轮播图效果
2020/12/13 Javascript
在Python中操作时间之tzset()方法的使用教程
2015/05/22 Python
Python中文竖排显示的方法
2015/07/28 Python
使用python调用zxing库生成二维码图片详解
2017/01/10 Python
Android 兼容性问题:java.lang.UnsupportedOperationException解决办法
2017/03/19 Python
python求最大值,不使用内置函数的实现方法
2019/07/09 Python
pow在python中的含义及用法
2019/07/11 Python
python3的url编码和解码,自定义gbk、utf-8的例子
2019/08/22 Python
使用python模拟高斯分布例子
2019/12/09 Python
Python 定义只读属性的实现方式
2020/03/05 Python
Python如何使用ElementTree解析xml
2020/10/12 Python
python利用后缀表达式实现计算器功能
2021/02/22 Python
医学检验专业个人求职信范文
2013/12/04 职场文书
事假请假条范文
2014/04/11 职场文书
银行授权委托书样本
2014/10/13 职场文书
董事长岗位职责
2015/02/13 职场文书