Javascript 如何将此类型代码转换为laravel格式?
这段代码是关于普通php代码的,我想把它放到laravel控制器中,但它不起作用。我的问题是想问一下如何使这段代码起作用并与我的数据库链接Javascript 如何将此类型代码转换为laravel格式?,javascript,php,laravel,fullcalendar,Javascript,Php,Laravel,Fullcalendar,这段代码是关于普通php代码的,我想把它放到laravel控制器中,但它不起作用。我的问题是想问一下如何使这段代码起作用并与我的数据库链接 if($type == 'fetch') { $events = array(); $query = mysqli_query($con, "SELECT * FROM calendar"); while($fetch = mysqli_fetch_array($query,MYSQLI_ASSOC)) { $e =
if($type == 'fetch')
{
$events = array();
$query = mysqli_query($con, "SELECT * FROM calendar");
while($fetch = mysqli_fetch_array($query,MYSQLI_ASSOC))
{
$e = array();
$e['id'] = $fetch['id'];
$e['title'] = $fetch['title'];
$e['start'] = $fetch['startdate'];
$e['end'] = $fetch['enddate'];
$allday = ($fetch['allDay'] == "true") ? true : false;
$e['allDay'] = $allday;
array_push($events, $e);
}
echo json_encode($events);
}
这是我的视图代码,有人能帮我看看如何链接它吗?因此,我可以从数据库中获取数据并将其显示在我的完整日历上
编辑后。。 这是我的视图代码。
首先,当您使用
POST
方法时&我假设您是全球csrf
中间件,因此无论何时请求POST
方法,您都必须在请求时传递csrf
令牌。为此,您可以将csrf
令牌添加到meta
public function show(Request $request){
if($request->get('type') == 'fetch'){
return Events::select(['calendar_id','calendar_title','startdate as start', 'enddate as end'])->get();
}
}
您可以查看更多详细信息
现在在jQuery代码中
<meta name="csrf-token" content="{{ csrf_token() }}">
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
现在在控制器的操作中
$.ajax({
url: 'YOUR_URL_TO_POST',
type: 'POST', // Send post data
data: 'type=fetch',
async: false,
success: function(s){
json_events = s;
}
});
您可以在这里查看如何定义模型。我不了解您在上面提到的csrf,这是需要放在我的视图中还是?
Route::get('events/show','EventsController@show'); 代码>我像这样设置我的路由,所以在url部分,我只是把url:“{{url('events/show')}
,像这样?@Ben如果您在应用程序/Http/Kernel.php
文件中看到Kernel.php
,您将看到一个$middleware
受保护的属性。这里列出了在每个请求中执行的所有中间件。有一个名为VerifyCsrfToken
的中间件,它的任务是检查csrf
。您应该广告通过laravel文档更多您可以使用eventSources选项从服务器加载事件。
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
url: 'YOUR_URL_TO_POST',
type: 'POST', // Send post data
data: 'type=fetch',
async: false,
success: function(s){
json_events = s;
}
});
public function your_method_name(\Request $request)//put your action name & inject Request
{
if ($request->get('type') == 'fetch')//check type
{
return Calendar::select(['id', 'title', 'startdate as start', 'enddate as end', 'allDay'])->get();//I think you have a calendar model
}
}