foreach Laravel上的多id-PHP问题
我有一个搜索功能,我需要添加帖子的foreach Laravel上的多id-PHP问题,php,database,laravel,Php,Database,Laravel,我有一个搜索功能,我需要添加帖子的id(从表观点,列id)。在我看来,我已经有了主题,我从数据库中通过$user->subject获得它,但在$user->id中,我得到的是用户的id,而不是帖子的id。因此,我需要正确地获取数据。我需要得到基于主题的帖子id 现在,我创建了一个新变量,它返回如下内容: $user = Opinion::where ( 'subject', 'LIKE', '%' . $q . '%' ) ->join('role
id
(从表观点
,列id
)。在我看来,我已经有了主题
,我从数据库中通过$user->subject
获得它,但在$user->id
中,我得到的是用户的id,而不是帖子的id。因此,我需要正确地获取数据。我需要得到基于主题的帖子id
现在,我创建了一个新变量,它返回如下内容:
$user = Opinion::where ( 'subject', 'LIKE', '%' . $q . '%' )
->join('role_users' , 'role_users.user_id', '=', 'opinions.user_id')
->join('roles' , 'roles.id', '=', 'role_users.role_id')
->join('users', 'users.id', '=', 'opinions.user_id')
->orWhere ( 'opinions.user_id', 'LIKE', '%' . $q . '%' )
->orWhere ( 'opinions.id', '=', 'opinions.subject')
->orWhere('opinions.category_id' ,'=', $category->id)
->orWhere ( 'opinions.user_id', '=', 'users.username')
->get ();
$topic_id = Opinion::select('id', 'subject')
->get();
Collection {#883 ▼
#items: array:20 [▼
0 => Opinion {#873 ▶}
1 => Opinion {#851 ▼
#table: "opinions"
+timestamps: false
#fillable: array:10 [▶]
#connection: null
#primaryKey: "id"
#keyType: "int"
#perPage: 15
+incrementing: true
#attributes: array:2 [▼
"id" => "2"
"subject" => "4 Ways We Can Avoid Workplace Burnout"
]
以下是我的观点:
<?php $count_event = 1; ?>
@foreach($details as $user)
@if($count_event == 1)
<div class="row news-v2 margin-bottom-50 ">
<div class="col-sm-6 sm-margin-bottom-30">
<div class="news-v2-badge">
<div class="easy-block-v1">
<div class="easy-block-v1-badge rgba-{{ $category->color }} noticeboard-topic-category">
<i class="icon-{{ $typee }}"></i> / {{ $type }}
</div>
<?php
$video_content = preg_replace("/<img[^>]+\>/i", "", $user->information);
preg_match('/src="([^"]+)"/', $video_content, $video);
?>
<?php
$match = '';
$str = $user->information;
$start = "<iframe src='";
$end = "' width='100%' height='281'></iframe>";
$pattern = sprintf(
'/%s(.+?)%s/ims',
preg_quote($start, '/'), preg_quote($end, '/')
);
if (preg_match($pattern, $str, $matches)) {
list(, $match) = $matches;
}
?>
@if(isset($match) && $match != '')
<iframe src="{{ $match }}" width='100%' height='258'></iframe>
@elseif(isset($video[1]))
<iframe src="{{ $video[1] }}" width='100%' height='258'></iframe>
@else
<?php preg_match('/<img.+src=[\'"](?P<src>.+?)[\'"].*>/i', $user->information, $image); ?>
@if(isset($image['src']))
<?php $img = str_replace('&', '&', $image['src']); ?>
<img class="img-responsive category-image" src="{{ url('ass/409/258?'.$img) }}" alt="">
@else
<?php $img = "thumbnail/".$user->profile_picture; ?>
@if(@getimagesize($img))
<img class="img-responsive category-image" src="{{ url('ass/409/258?'.$img) }}" alt='' />
@else
<?php $img = "assets/img/main/img12.jpg"; ?>
<img class="img-responsive category-image" src="{{ url('ass/409/258?'.$img) }}" alt="">
@endif
@endif
@endif
<!--
<div class="card" style="width:300px">
<div class="card-body">
<?php $img = "thumbnail/".$user->profile_picture; ?>
@if(@getimagesize($img))
<img style="position: relative;top: 9px;" class="img-circle noticeboard-profile-picture-neo col-md-2" src="{{ url('ass/50/50?'.$img) }}" alt="">
@endif
<h4 class="noticeboard-title">
<a href="{{ url( $test ) }}/{{ $user->id }}_{{ Slugify::slugify( $user->subject ) }}" class="noticeboard-subject">{{ $user->subject }} </a>
</h4>
<p class="card-text">
<a href="{{ url( $test ) }}/{{ $user->id }}_{{ Slugify::slugify( $user->subject ) }}" class="btn btn-primary">Read more</a>
</div>
</div>
</div> -->
</div>
</div>
<div class="news-v2-desc" style="background-color: #f7f8fa">
<div class="row">
<div class="col-md-2">
<?php $img = "thumbnail/".$user->profile_picture; ?>
@if(@getimagesize($img))
<img style="position: relative;top: 9px;" class="img-circle noticeboard-profile-picture-neo col-md-2" src="{{ url('ass/50/50?'.$img) }}" alt="">
@endif
</div>
<div class="col-md-10 noticeboard-subjecttitle">
<h4 class="noticeboard-title" style="text-align: justify;position: relative;right: -15px;">
@foreach($topic_id as $opinion)
{{$opinion->id}}
<a href="{{ url( $test ) }}/{{ $user->id }}_{{ Slugify::slugify( $user->subject ) }}" class="noticeboard-subject">{{ $user->subject }} </a>
@endforeach
</h4>
<ul style="position: relative;right: -15px" class="list-unstyled list-inline blog-info noticeboard-ul-link">
<li>
@if($user->role_id == 1)
<i class="icon-user"></i>
<a href="{{ url('')}}/{{$user->username}}">{{$user->username}}</a>
@else
<i class="icon-hotel-restaurant-172 u-line-icon-pro fa- fa-lg"></i>
@endif
</li>
<li>
<i style="font-size: 11px" class="icon-{{$typee}}"></i>
<a href="{{ url('') }}/{{$link}}">{{ $type }}</a>
</li>
</ul>
</div>
</div>
<?php
$information = preg_replace("/<img[^>]+\>/i", "", $user->information);
$Output = preg_replace('/<iframe.*?\/iframe>/i','', $information);
?>
<p>{{ str_limit(trim(strip_tags(preg_replace(array('/\s{2,}/', '/[\t\n]/'), ' ', $Output))), 200) }}</p>
<p><a style="border-radius: 0rem !important;border: 0.1rem solid #18ba9b" class="btn-z btn-xs g-mr-10 g-mb-15" href="{{ url( $test ) }}/{{ $user->id }}_{{ Slugify::slugify( $user->subject ) }}">Read more <i class="fa fa-angle-double-right margin-left-5"></i></a></p>
</div>
</div>
@endif
@endforeach
@foreach($user的详细信息)
@如果($count_event==1)
/{{$type}
您可以在查询生成器中添加select函数来获取意见id,如下所示
$user = Opinion::where ( 'subject', 'LIKE', '%' . $q . '%' )
->join('role_users' , 'role_users.user_id', '=', 'opinions.user_id')
->join('roles' , 'roles.id', '=', 'role_users.role_id')
->join('users', 'users.id', '=', 'opinions.user_id')
->orWhere ( 'opinions.user_id', 'LIKE', '%' . $q . '%' )
->orWhere ( 'opinions.id', '=', 'opinions.subject')
->orWhere('opinions.category_id' ,'=', $category->id)
->orWhere ( 'opinions.user_id', '=', 'users.username')
->select('opinions.id as id','subject')
->get ();
您已经使用“$OPTIONE->id”获得了OPTIONS表id列,不确定您到底需要什么…使用{{{{$OPTIONE->id}
我得到了未定义的变量。也许问题就在这里->join('users'、'users.id'、'='、'opinions.user_id')
因为,从我添加这个时起,post中的id就变成了用户的id。您能否显示使用dd($user)的输出
pleaseSure,通过Bassem Samir的查询,我获得了正确的帖子id,但现在我需要根据用户id
从表用户
从表意见
中获得用户名
(id和主题也在哪里)。这里是dd($user)
:嗯,现在我得到了正确的id,但是现在我没有用户id:)我怎么能把它带回来?现在我需要根据表用户id
中的用户id
从表用户中获取用户名
。
将它们添加到上面的选择函数中```->选择('opinions.id作为id','subject','users.id作为用户id','username'))``opinions.user\u id as users.username?以相同的方式将其添加到选择函数'role\u users.role\u id as role\u id'