Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel-检查用户是否提交了任何记录_Php_Database_Laravel - Fatal编程技术网

Php Laravel-检查用户是否提交了任何记录

Php Laravel-检查用户是否提交了任何记录,php,database,laravel,Php,Database,Laravel,我正在做一个简单的测试网站,基于deviantart。在索引页面上,我想显示随机用户的随机图形。我已经成功地做到了这一点,但问题是一个用户可以没有图形,我想在这种情况下过滤并选择另一个用户 因此,我已经设置了我的模型,以便图形属于用户,并且用户有许多图形 这是控制器 public function index() { //Select three random users $user = \App\User::orderByRaw("RAND()")->take(3

我正在做一个简单的测试网站,基于deviantart。在索引页面上,我想显示随机用户的随机图形。我已经成功地做到了这一点,但问题是一个用户可以没有图形,我想在这种情况下过滤并选择另一个用户

因此,我已经设置了我的模型,以便图形属于用户,并且用户有许多图形

这是控制器

    public function index()
{
    //Select three random users
    $user = \App\User::orderByRaw("RAND()")->take(3)->get();

    //Select a graphic from a user
    foreach ($user as $user) {
        $graphics[] = $user->graphics->first();
    }

    return view("page.index",compact('graphics'));
}
我只想检查所选的随机用户是否提交了任何图形,如果没有,请选择另一个随机用户,我完全不知道该怎么做?

试试这个 如果您想尝试使用DB,那么这是一种很有说服力的方法,然后进行相应的更改。
if(Graphics::where('user_id','=',$randomUserId)->exists()){
//用户发现

}

以下是我如何解决它的

/** Generate graphics function
* Generates random users and fetches their graphics.
* $no_users is the last id of users or the max number of users.
* @return graphics collection
*/

public function generate_graphics($no_users)
{
    $rnum_selected = [];
    $i = 1;

    while ($i <= 3) {
        $rnum = rand(1, $no_users);
        if (!in_array($rnum, $rnum_selected)) {
            $rnum_selected[] = $rnum;
            $user = \App\User::find($rnum); 

            if($user != null){
                if(!$user->graphics->isEmpty()){
                    $graphics[] = $user->graphics->first();
                    $i++;
                }
            }
        }
    }   
    return $graphics;
}
/**生成图形功能
*生成随机用户并获取其图形。
*$no_users是用户的最后一个id或最大用户数。
*@return图形集
*/
公共函数生成图形($no_用户)
{
$rnum_selected=[];
$i=1;
而($i graphics->isEmpty()){
$graphics[]=$user->graphics->first();
$i++;
}
}
}
}   
返回$graphics;
}

是通过InputHank you提交的图形。我编写了这个函数,它使用了您提供给我的内容,我还采用了更不同的方法解决了这个问题。公共函数generate_graphics($no_users){$rnum_selected=[];$i=1;而($i exists()){$graphics[]=$graphic->get()->first();$i++;}}}返回$graphics;}使用循环的安装不能使用laravel join吗?