Php 使用laravel上载图像:已上载文件,但不是图像

Php 使用laravel上载图像:已上载文件,但不是图像,php,laravel,laravel-5,Php,Laravel,Laravel 5,我正在尝试在结果表中插入用户的姓名、图像和分数。通过比较测验表中的正确答案来计算分数。其他数据一切都很好,但图像上传了一些东西,但它不是名为jpg的图像 这就是我在视图中使用表单提交的方式 <form method="POST" action="{{url("quiz/check/{$quiz[0]->category}/2")}}" enctype="multipart/form-data"> 控制员: public function check(Reques

我正在尝试在
结果
表中插入用户的姓名、图像和分数。通过比较
测验
表中的正确答案来计算分数。其他数据一切都很好,但图像上传了一些东西,但它不是名为jpg的图像

这就是我在视图中使用表单提交的方式

  <form method="POST" action="{{url("quiz/check/{$quiz[0]->category}/2")}}" enctype="multipart/form-data">
控制员:

     public function check(Request $request, $name, $no)
  {

    $count=0; 
    $input=$request->all();
    $mycheck=$input['mycheck'];
    $eman=$input['name'];

        $stmt = quiz::where('category',$name)->where('level',$no)->get();
        $array=['category'=>$name,'level'=>$no];            
        $cat = quiz::where($array)->first();  

    foreach ($stmt as $c)
    {

         if(array_key_exists($c->qid, $mycheck) && $mycheck[$c->qid]==$c->answer)
            {
                $count=$count+1;
        }
    }

        $imageName = $request->file('image')->getClientOriginalExtension();

        $request->file('image')->move(
        base_path() . '/public/images/', $imageName);


   $addscore= Result::insert(['Name'=>$eman,'Score'=>$count,'Level'=>$no,'Category'=> $name,'Image'=>$imageName]);

        return View('quiz.check',['stmt'=>$stmt,'input'=>$input,'count'=>$count,'eman'=> $eman,'cat'=>$cat,'mycheck'=>$mycheck,'addscore'=>$addscore]);  

 }

这部分
$stmt=DB::select('select*from results')将导致数组,这就是问题所在

另一个问题是您使用的是
DB
。为什么要在Laravel提供有说服力的信息时自己写问题

您应该为对象使用模型,如
Result
。然后您可以简单地访问所有值,如:
Result::all()
等等


我给你们的建议是,阅读一些教程,或者更好地从laracasts初学者系列开始

试图在哪一行获取非对象的属性?也不应该是
$request->file('image')->move
应该是
$request->file('image')->move(
)?正如你建议的那样,我现在使用的是雄辩的并学习了一些教程,但在这里我已经更新了这个问题。
     public function check(Request $request, $name, $no)
  {

    $count=0; 
    $input=$request->all();
    $mycheck=$input['mycheck'];
    $eman=$input['name'];

        $stmt = quiz::where('category',$name)->where('level',$no)->get();
        $array=['category'=>$name,'level'=>$no];            
        $cat = quiz::where($array)->first();  

    foreach ($stmt as $c)
    {

         if(array_key_exists($c->qid, $mycheck) && $mycheck[$c->qid]==$c->answer)
            {
                $count=$count+1;
        }
    }

        $imageName = $request->file('image')->getClientOriginalExtension();

        $request->file('image')->move(
        base_path() . '/public/images/', $imageName);


   $addscore= Result::insert(['Name'=>$eman,'Score'=>$count,'Level'=>$no,'Category'=> $name,'Image'=>$imageName]);

        return View('quiz.check',['stmt'=>$stmt,'input'=>$input,'count'=>$count,'eman'=> $eman,'cat'=>$cat,'mycheck'=>$mycheck,'addscore'=>$addscore]);  

 }