我有一个 html 表单,其中包含以下字段来创建配方:
<form class="login-form" action="<?php echo htmlspecialchars(basename($_SERVER['REQUEST_URI'])); ?>" method="post">
<div class="form-group <?php echo (!empty($name_err)) ? 'has-error' : ''; ?>">
<label>Name</label>
<input type="text" name="name" class="form-control" value="<?php echo $name; ?>">
<span class="help-block"><?php echo $name_err; ?></span>
</div>
<div class="form-group">
<label>Image</label>
<textarea name="image" class="form-control"><?php echo $image; ?></textarea>
<span class="help-block"></span>
</div>
<div class="form-group">
<label>Video Name</label>
<input type="text" name="video_name" class="form-control" value="<?php echo $video_name; ?>">
<span class="help-block"></span>
</div>
<div id="ingredients" class="form-group <?php echo (!empty($ingredient_err)) ? 'has-error' : ''; ?>">
<label>Ingredient Name</label>
<input type="text" name="ingredient_name" class="form-control" value="<?php …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 laravel 处理基本表单,但遇到了一个问题,即未检测到我的 POST 路由并导致刀片模板中出现路由未定义错误。我的目标是解决此错误并将表单发布到控制器,然后使用 $request 参数访问各种表单字段。
这是错误: Route [become-a-customer] not defined.
我感谢有关如何解决此问题的任何建议。
形式
<form action="{{ route('become-a-customer') }}" method="post" class="col-md-8 offset-md-2">
<div class="form-row">
<div class="form-group col-md-6">
<label for="first_name">First Name</label>
<input name="last_name" type="email" class="form-control" id="first_name" placeholder="First Name">
</div>
...
</div>
<input type="hidden" name="_token " value="{{ Session::token() }}"/>
<button type="submit" class="btn">SUBMIT</button>
</form>
Run Code Online (Sandbox Code Playgroud)
网页.php
Route::post('/become-a-customer', 'BecomeACustomerFormController@postBecomeACustomer');
Run Code Online (Sandbox Code Playgroud)
成为客户控制器。php
class BecomeACustomerFormController extends Controller
{
public function postBecomeACustomer(Request $request)
{
$firstName = $request['first_name'];
$lastName = $request['last_name'];
...
...
return redirect()->back();
}
}
Run Code Online (Sandbox Code Playgroud)