簡體   English   中英

Laravel:刀片中未定義的變量?

[英]Laravel : Undefined variable in blade?

在獲取未定義的變量時:在執行刀片視圖時在視圖中得分(視圖:C:\\ Users \\ Sarthak \\ blog \\ resources \\ views \\ submitquestion.blade.php):

控制器部分

public function question(Request $request)
{
    static $startscore = 0;
    $getidvalue = Input::get('getid');
    $getanswervalue = Input::get('getanswer');
    $dbscore = DB::table('5question')->select('question_id', 'correct_answer', 'question_marks')->where('question_id', '=', $getidvalue)->get();
    foreach($dbscore as $value) {
        if ($getanswervalue == ($value->correct_answer)) {
            $getscore = $startscore + $value->question_marks;
        }
        elseif ($getanswervalue == null) {
            $emptyvalue = - 1;
            $getscore = $startscore + $emptyvalue;
        }
        else {
            $novalue = 0;
            $getscore = $startscore + $novalue;
        }
    }

    echo "$getscore";
    Session::push('getscoresession', $getscore);
    $getsession = ['qid' => $getidvalue, 'answer' => $getanswervalue];
    Session::push('answer', $getsession);

    // return response()->json(['qid'=>$getidvalue,'answer'=>$getanswervalue]);

    $score = array_sum(Session::get("getscoresession"));

    // return view('submitquestion',compact('score'));

    return view('submitquestion', ['score' => $score]);
}

葉片部分:

您已提交測驗,您的分數是:{{$ score}}>注銷

試試這個:

return view('submitquestion', compact('score'));

您可以通過withcompact傳遞變量形式的控制器來查看:

$request->session()->put('getscoresession', $getscore);
$getsession = ['qid' => $getidvalue, 'answer' => $getanswervalue];
$request->session()->put('answer', $getsession);

if ($request->session()->has('getscoresession')) {
     $score = array_sum($request->session()->get("getscoresession"));
}else{
      $score = 0;
 }

與使用:

$score= 10;  
return view('submitquestion')->with('score',$score);

使用緊湊:

return view('submitquestion',compact('score'));

試試吧。 如果從控制器收到錯誤,則發送$ score = 10; 返回視圖('submitquestion')-> with([['score'=> $ score]);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM