2016-08-23 39 views
0

我需要使用AND運算符來檢查我的表中的數據在Laravel和查看此類似如何Laravel比較行數據5.2

if(Permission::where('status', '=', '1')->first()) AND (Permission::where('project_id', '=', '$id')->first())return view('collaborators.show')->withProject($project)->withTasks($tasks)->withFiles($files)->withComments($comments)->withCollaborators($collaborators); 
else 
    return('hi'); 

,但我發現了以下錯誤

syntax error, unexpected 'else' (T_ELSE) 

回答

1

你在if之後和return關鍵字之前遺漏了遺傳。

下面是用正確的語法代碼爲您提供:

if ((Permission::where('status', '=', '1')->first()) AND (Permission::where('project_id', '=', '$id')->first())) { 
    return view('collaborators.show')->withProject($project)->withTasks($tasks)->withFiles($files)->withComments($comments)->withCollaborators($collaborators); 
} else { 
    return 'hi'; 
} 

我不知道,但也許這就是你想達到

if (Permission::where('status', 1)->where('project_id', $id)->exists()) { 
    return view('collaborators.show') 
     ->withProject($project) 
     ->withTasks($tasks) 
     ->withFiles($files) 
     ->withComments($comments) 
     ->withCollaborators($collaborators); 
} else { 
    return 'hi'; 
} 
+0

你的代碼工作,但$ id變量不許可標識::在哪裏( 'PROJECT_ID', '=', '的$ id') - >第()) – Fernando

+0

我只是固定的語法。其餘代碼保持不變。你應該改變''$ id''到'$ id'(去掉撇號) – Skysplit

+0

我做到了,但結果相同..... – Fernando

-1

下面的代碼是正確的格式是什麼。它應該改正錯誤

if(Permission::where('status', '=', '1')->first() && Permission::where('project_id', '=', '$id')->first()){ 
    return view('collaborators.show') 
     ->withProject($project) 
     ->withTasks($tasks) 
     ->withFiles($files) 
     ->withComments($comments) 
     ->withCollaborators($collaborators); 
}else{ 
    return('hi'); 
} 
+0

你的代碼正在工作,但是$ id變量在Permission ::中不能識別,其中('project_id','=','$ id') - > first()) – Fernando

+0

@Fernando你能發佈實際錯誤嗎? – scottevans93

+0

這是什麼問題,你的代碼如何解決它? – showdev