首页 > 语言 > PHP > 正文

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

2024-05-05 00:02:42
字体:
来源:转载
供稿:网友

这里的搜索功能主要基于表单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教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选