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 相关文章推荐
基于mysql的论坛(7)
Oct 09 PHP
怎样在php中使用PDF文档功能
Oct 09 PHP
php若干单维数组遍历方法的比较
Sep 20 PHP
PDO版本问题 Invalid parameter number: no parameters were bound
Jan 06 PHP
php实现CSV文件导入和导出
Oct 24 PHP
php rmdir使用递归函数删除非空目录实例详解
Oct 20 PHP
php中替换字符串函数strtr()和str_repalce()的用法与区别
Nov 25 PHP
PHP调试及性能分析工具Xdebug详解
Feb 09 PHP
Yii实现复选框批量操作实例代码
Mar 15 PHP
Laravel框架Auth用户认证操作实例分析
Sep 29 PHP
php use和include区别总结
Oct 13 PHP
laravel model 两表联查示例
Oct 24 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 jQuery表单,带验证具体实现方法
2014/02/15 PHP
PHP文件下载实例代码浅析
2016/08/17 PHP
Laravel统一错误处理为JSON的方法介绍
2020/10/18 PHP
js获取div高度的代码
2008/08/09 Javascript
非常好用的JsonToString 方法 简单实例
2013/07/18 Javascript
javascript读取xml实现javascript分页
2013/12/13 Javascript
javascript常见操作汇总
2014/09/03 Javascript
jQuery插件制作之参数用法实例分析
2015/06/01 Javascript
jQuery实现可高亮显示的二级CSS菜单效果
2015/09/01 Javascript
jQuery 调用WebService 实例讲解
2016/06/28 Javascript
BootStrap表单宽度设置方法
2017/03/10 Javascript
jstree单选功能的实现方法
2017/06/07 Javascript
详解Vue路由开启keep-alive时的注意点
2017/06/20 Javascript
浅谈Vuex@2.3.0 中的 state 支持函数申明
2017/11/22 Javascript
获取本机IP地址的实例(JavaScript / Node.js)
2017/11/24 Javascript
JS实现左边列表移到到右边列表功能
2018/03/28 Javascript
浅谈如何通过node.js对数据进行MD5加密
2018/05/16 Javascript
为什么使用koa2搭建微信第三方公众平台的原因
2018/05/16 Javascript
vue router 源码概览案例分析
2018/10/09 Javascript
JS实现斐波那契数列的五种方式(小结)
2020/09/09 Javascript
详细介绍Python中的偏函数
2015/04/27 Python
Python模块文件结构代码详解
2018/02/03 Python
python实现堆和索引堆的代码示例
2018/03/19 Python
django允许外部访问的实例讲解
2018/05/14 Python
Python中按值来获取指定的键
2019/03/04 Python
对python中的装包与解包实例详解
2019/08/24 Python
django中嵌套的try-except实例
2020/05/21 Python
Python select及selectors模块概念用法详解
2020/06/22 Python
python tkiner实现 一个小小的图片翻页功能的示例代码
2020/06/24 Python
美国现代家具网站:Design Within Reach
2018/07/19 全球购物
Dogeared官网:在美国手工制作的珠宝
2019/08/24 全球购物
Parfumdreams芬兰:购买香水和化妆品
2021/02/13 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
小学数学教学反思
2014/02/02 职场文书
班级学雷锋活动总结
2014/06/26 职场文书
校本课程教学计划
2015/01/19 职场文书