Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.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
试图从laravel中的数据库中获取数据,但获取错误。为什么?_Laravel - Fatal编程技术网

试图从laravel中的数据库中获取数据,但获取错误。为什么?

试图从laravel中的数据库中获取数据,但获取错误。为什么?,laravel,Laravel,//这是create.blade.php。它说的是未定义的变量数据。但是当我从controller.php发送时,请建议错误////这是controller.php。在这里,我试图从数据库发送数据 <center> <form method="POST" action="{{url('/insert')}}"> {!! csrf_field() !!} First name:<br> <input type="

//这是create.blade.php。它说的是未定义的变量数据。但是当我从controller.php发送时,请建议错误////这是controller.php。在这里,我试图从数据库发送数据

  <center>
    <form method="POST" action="{{url('/insert')}}">
    {!! csrf_field() !!}
      First name:<br>
      <input type="text" name="task_name" ><br>
      Last name:<br>
      <input type="text" name="task_detail" ><br><br>
      <input type="submit" value="Submit" value="save">
    </form>

    </center>

    <center>
    @foreach($data as $value)

    {{$value->task_name}}

    <br>

    {{$value->task_detail}}


    @endforeach

    </center>
    namespace App\Http\Controllers;


    use Illuminate\Foundation\Bus\DispatchesJobs;
    use Illuminate\Routing\Controller as BaseController;
    use Illuminate\Foundation\Validation\ValidatesRequests;
    use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
    use Illuminate\Http\Request;
    use DB;

    class Controller extends BaseController
    {
        use AuthorizesRequests, DispatchesJobs, ValidatesRequests;


               public function insert( Request $req)

        {
                $name=$req->input('task_name');

                $detail=$req->input('task_detail');

                $data=array('task_name'=>$name,'task_detail'=>$detail);

                DB::table('tasks')->insert($data);
                echo "success";
                $this->show();
        }

        public function show()

        {

            $data = DB::table('tasks')->get();

             if (count($data>0))
              {
                  return view ('create',$data);
              }
             else

              {

               return view ('create');

              }
        }


    }

您以错误的方式传递变量;使用
compact()
。像这样:

if (count($data>0))
              {
                  return view ('create',compact('data'));
              }
             else

              {

               return view ('create');

              }

我认为您需要更新您的显示功能,如:

public function show()

{

  $data = DB::table('tasks')->get();

  if (count($data) > 0)
  {
      return view ('create',compact('data'));
  }
  else

  {

   return view ('create');

  }
}
希望这项工作为你