【发布时间】:2020-10-11 08:50:12
【问题描述】:
我在我的项目中使用 Laravel,所以我想在他与医生预约时更改患者的状态,这样他就可以有 3 个 satuts , Accept , waiting (当患者选择日期和时间时自动),不接受,我面临的问题是当我点击活动按钮时,数据库中没有任何变化。
这是状态的控制器:
public function changeStatus(Request $request)
{
$user = rdv::where('IDP', $request->input('IDP'))->get();
if (count($user) > 0) {
if ($user->Etat_de_rdv == en_attente) {
$user->Etat_de_rdv = Accepté;
} else {
$user->Etat_de_rdv = Reservé;
}
$user->Etat_de_rdv = $request->input('status');
$user->save();
return response()->json(['success' => 'Status change successfully.']);
}
}
这是脚本:
<script>
$('.toggle-class').change(function () {
var status = $(this).prop('checked') == true ? 'Accepter' : 'Temps charger';
var id = $(this).data('IDP');
console.log(id);
console.log(status);
$.ajax({
type: "get",
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
url: 'changeStatus',
data: {
Etat_de_rdv: status, //Should be like this
IDP: id
},
success: function (data) {
console.log(data.success);
}
});
});
</script>
这是医生看到所有预约的看法;
<h3> Vos patient :</h3>
@foreach($pat as $lo)
@if ($lo->IDD== $med->ID)
<div class="admin">
<div class="info">
<h3> {{ $lo->Nom_et_prénom }} </h3>
<p>{{ $lo->Numéro_de_téléphone }}</p>
<p>{{ $lo->date}}</p>
<p>{{ $lo->time }}</p>
<input data-id="{{$lo->IPD}}" class="toggle-class" type="checkbox" data-onstyle="success"
data-offstyle="danger" data-toggle="toggle" data-on="Accepter"
data-off="Temps charger" {{ $lo->Etat_de_rdv ? 'checked' : '' }}>
</div>
</div>
@endif
@endforeach
*rdv mean : 约会表 *IDP : 患者 ID
【问题讨论】:
-
是
Accepté还是"Accepté"?在你的控制器中 -
我忘了
" "@Viney -
没什么变化@Viney
-
能否请您检查devtool当您单击活动按钮时是否出现任何ajax请求
-
请您检查浏览器中的网络选项卡,以确认 AJAX 请求肯定会到达正确的 url(以及它是否返回 200 状态)。您能否也从您的
routes/web.php文件中添加代码。
标签: javascript sql ajax laravel