猿问

404 NOT FOUND with LARAVEL6

我在将变量传递到 URL 时遇到问题,路由存在但仍然是“404 NOT FOUND”。


形式 :


<form action="/rdv_{{$go->ID}}" method="post" role="form" data-aos="fade-up">

       @csrf

     <input placeholder="Email" type="email" class="form-control" name="email" id="email" />

     <input placeholder="Votre numéro de téléphone " type="text" class="form-control" name="tel" 

      id="subject" /> 

    <div id="buttons"> 

    <button type="submit" class="btn btn-primary"> Prendre un rendez-vous </button>

    </div> 

</form>

控制器:rendezv.php:


 public function rdv ($ID) {


        $nm=request('email');

        $tel=request('tel');

        $ID=request('{{$go->ID}}');


        $doctor=doc::findOrFail($ID);

        $rdv = new rendezvous() ;

        $rdv->Email=$nm;

        $rdv->Numéro_de_téléphone=$tel;

        $rdv->IDD=$doctor->ID;

        $rdv-> save();

        return redirect('/index') ; 

     }


}

网站.php


Route::post('/rdv_{ID}','rendezv@rdv');

错误只是“404 | Not Found”。当我单击“Prendre un rendez-vous”按钮时,地址变为:“http://localhost:8000/rdv_1032569”,错误可能就在那里。


慕斯709654
浏览 72回答 3
3回答

至尊宝的传说

我重新修改了代码如下:视图:我更新了表单操作并添加了一个值为“$go-ID”的隐藏输入字段。<form action="/rdv" method="post" role="form" data-aos="fade-up">&nbsp; &nbsp; &nbsp; &nbsp;@csrf&nbsp; &nbsp; &nbsp;<input placeholder="Email" type="email" class="form-control" name="email" id="email" />&nbsp; &nbsp; &nbsp;<input placeholder="Votre numéro de téléphone " type="text" class="form-control" name="tel" id="subject" />&nbsp;<input type="hidden" class="form-control" name="goID" value="{{$go->ID}}" />&nbsp; &nbsp; <div id="buttons">&nbsp;&nbsp; &nbsp; <button type="submit" class="btn btn-primary"> Prendre un rendez-vous </button>&nbsp; &nbsp; </div>&nbsp;</form>控制器:我假设视图中的 $go->ID 与控制器中的 $doctor->ID 相同。所以,我将 $rdv->IDD 的值赋值为 $ID;公共函数 rdv () {&nbsp; &nbsp; $nm=request('email');&nbsp; &nbsp; $tel=request('tel');&nbsp; &nbsp; $ID=request('goID');&nbsp; &nbsp; $rdv = new rendezvous() ;&nbsp; &nbsp; $rdv->Email=$nm;&nbsp; &nbsp; $rdv->Numéro_de_téléphone=$tel;&nbsp; &nbsp; $rdv->IDD=$ID;&nbsp; &nbsp; $rdv-> save();&nbsp; &nbsp; return redirect('/index') ;&nbsp;&nbsp;}路线:我从路线中删除了“_{ID}”。Route::post('/rdv','rendezv@rdv');

浮云间

错误很可能来自于此$doctor=doc::findOrFail($ID); 如果没有指定 ID 的文档模型,laravel 会自动返回 404。要更改此行为,请find()手动使用和处理返回,例如&nbsp; $doctor=doc::find($ID);if(!$doctor) {// return here}

心有法竹

改变路线&nbsp;Route::post('/rdv/{ID}','rendezv@rdv')->name('rdv');&nbsp;和形成路线&nbsp;actions="{{ route('rdv', [$go->ID]) }}"
随时随地看视频慕课网APP
我要回答