我有一个引导模式对话框,它使用laravel表单来注册用户。
下面是代码:
<div id="addPenggunaModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="ModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="ModalLabel">Tambah Pengguna Baru</h3>
</div>
<div class="modal-body">
{{ Form::open(array('url'=>'users/addpengguna','class'=>'form-horizontal', 'method'=> 'POST')) }}
<ul>
@foreach($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
<div class="control-group">
<label for="firstname" class="control-label">First Name:</label>
<div class="controls">
{{ Form::text('firstname', null, array('class'=>'span3', 'placeholder'=>'First Name')) }}
</div>
</div> <!-- /field -->
<div class="control-group">
<label for="lastname" class="control-label">Last Name: </label>
<div class="controls">
{{ Form::text('lastname', null, array('class'=>'span3', 'placeholder'=>'Last Name')) }}
</div>
</div> <!-- /field -->
<div class="control-group">
<label for="email" class="control-label">Email Address: </label>
<div class="controls">
{{ Form::text('email', null, array('class'=>'span3', 'placeholder'=>'Email Address')) }}
</div>
</div> <!-- /field -->
<div class="control-group">
<label for="password" class="control-label">Password:</label>
<div class="controls">
{{ Form::password('password', array('class'=>'span3', 'placeholder'=>'Password')) }}
</div>
</div> <!-- /field -->
<div class="control-group">
<label for="confirm_password" class="control-label">Confirm Password:</label>
<div class="controls">
{{ Form::password('password_confirmation', array('class'=>'span3', 'placeholder'=>'Confirm Password')) }}
</div>
</div> <!-- /field -->
<div class="control-group">
<label for="type_user" class="control-label">Tipe Pengguna:</label>
<div class="controls">
{{ Form::radio('level', '1'); }} Supervisor
{{ Form::radio('level', '0'); }} Sales
</div>
</div> <!-- /field -->
</form>
</div>
<div class="modal-footer">
{{ Form::submit('Simpan', array('class'=>'button btn btn-primary','id'=>'mdl_save_change'))}}
<button class="btn" data-dismiss="modal" aria-hidden="true">Batal</button>
</div>
{{ Form::close() }}
</div>
然后我用控制器保存细节:
public function postAddpengguna(){
/* function to add user in data pengguna */
$validator = Validator::make(Input::all(), User::$rules);
if($validator -> passes()){
$user = new User;
$user->firstname = Input::get('firstname');
$user->lastname = Input::get('lastname');
$user->email = Input::get('email');
$user->password = Hash::make(Input::get('password'));
$user->level = Input::get('level');
/* save the following details */
$user->save();
return Redirect::to('pengguna');
} else {
return Redirect::to('index');
}
}
但是表单并没有将任何数据保存到数据库中。我有另一个名为注册的页面,它可以正常工作。
我的问题:
1.如何从laravel表单提交跟踪POST,是否有任何浏览器扩展?
1.如何在laravel中跟踪错误日志
1.你知道我的问题是什么吗
先谢谢你。
更新
下面是描述其工作原理的屏幕截图。
引导模式:
当我按下提交按钮(蓝色按钮模态),我希望它保存数据到数据库。函数php如上所示。
我没有使用任何 AJAX 来调用表单的值。但是当我使用AJAX的时候,总是因为缺少TOKEN而出错。
3条答案
按热度按时间mwyxok5s1#
首先检查表单的
action
和_token
字段。要在表单中添加令牌字段,您应该在表单中包含以下行:<input type="hidden" name="_token" value="{{csrf_token()}}">
要在项目中重用引导模式,可以选中此Github链接
igsr9ssn2#
在laravel 5的最新版本中,您可以使用快捷方式获取令牌字段。
在这种情况下,您将得到类似于
您可以在任何情况下获得调用
csrf_token()
的令牌字符串,无论如何,老实说,我更喜欢csrf_field()
替代方案。rbpvctlc3#
您可以将此代码与 AJAX 代码一起使用: