Javascript 基于AJAX的多重过滤结果

Javascript 基于AJAX的多重过滤结果,javascript,jquery,ajax,laravel,filter,Javascript,Jquery,Ajax,Laravel,Filter,我目前正在使用Laravel和对数据库的AJAX调用来检索数据库中的内容。以前我做的语言选择器,将过滤视频的语言。但现在我打算将其更改为多语言选择器。我在谷歌上搜索多个结果过滤,但没有一个适合我。当用户选择一种语言时,我使用AJAX调用。对于当前的情况,我们有多个带有多个选择选项的AJAX调用 Javascript AJAX(选择新语言时) URL将从控制器执行以下方法: public function updateLanguage($type,$language,$channel) { $ca

我目前正在使用Laravel和对数据库的AJAX调用来检索数据库中的内容。以前我做的语言选择器,将过滤视频的语言。但现在我打算将其更改为多语言选择器。我在谷歌上搜索多个结果过滤,但没有一个适合我。当用户选择一种语言时,我使用AJAX调用。对于当前的情况,我们有多个带有多个选择选项的AJAX调用

Javascript AJAX(选择新语言时)

URL将从控制器执行以下方法:

public function updateLanguage($type,$language,$channel)
{
$categoryId = Channel::where('name','=',strtolower($channel))->pluck('category_id');

    if ($language == "All Languages" && $categoryId == 0)
    {
        var_dump("IF All languages and category all");
        $past = Videos::orderBy('created_at','desc')->where('active','=',1);
        $live = Videos::where('stream_active','=','1')->where('active','=',1)->orderBy('created_at','desc');    
    }else if ($categoryId != 0) {
        var_dump("Any languages and Not in 'all' ");
        $past = Videos::where('category_id','=', $categoryId)->where('stream_active','=','0')->where('active','=',1)->where('language','=',$language)->orderBy('created_at','DESC');
        $live = Videos::where('category_id','=', $categoryId)->where('stream_active','=','1')->where('active','=',1)->where('language','=',$language)->orderBy('created_at','DESC');
    }else {
        var_dump("ELSE");
    }
...
}

我目前想过滤多种语言的视频。我有一个视频列表div,我只知道如何过滤一种语言的视频,但不知道如何在数据库中选择多种语言

您可以设置langage变量,如:fr.en.nl

然后,在PHP中,将字符串拆分为

$str = 'fr.en.nl';
$langages= preg_split('.', $str);
最后,使用ORWHERE()设置SQL请求


你能解释一下你需要什么吗?@Musthaan我想过滤数据库视频中的多种语言,这样视频列表就会显示多种语言的视频。如果$str='fr',那么$language[1]将是“未定义的偏移量错误”。显然,这就是一个例子。只需说
if(count(langages)>1)
=>您必须对langages变量执行一个简单的操作。对于每个值,添加一个条件!
$str = 'fr.en.nl';
$langages= preg_split('.', $str);
->where('language','=',$languages[0])->orWhere('language','=',$language[1])