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