【发布时间】:2021-04-04 20:16:20
【问题描述】:
我正在尝试使用 ajax 提交表单,但它总是出错并且数据没有提交到数据库中。 请看一下我的代码。我对此进行了搜索,但没有得到任何解决方案,实际上我是 Codeigniter 的新手,对此并没有太多了解。我非常感谢有人帮我解决这个错误谢谢。
jQuery / AJAX 代码:
<script>
$(document).ready(function(){
$("#personal-info").submit(function(e){
e.preventDefault();
var fname = $("#fname").val();;
var email_address= $("#email_address").val();
var comment= $("#comment").val();
$.ajax({
type: "POST",
url: '<?= site_url('Book/contact')?>',
data: {fname:fname,email_address:email_address,comment:comment},
success:function(data)
{
Swal.fire({
position: 'top-end',
icon: 'success',
title: 'Message send successfuly',
showConfirmButton: false,
timer: 1500
});
},
error:function()
{
Swal.fire({
position: 'top-end',
icon: 'error',
title: 'Message Sending Fale Please try again',
showConfirmButton: false,
timer: 1500
});
}
});
});
});
</script>
查看:
<div class="row">
<div class="col-lg-5 offset-lg-6 col-md-12">
<div class="section-title v2">
<h2>Write to us</h2>
</div>
<form id="personal-info" action="" method="post">
<div class="form-control-wrap">
<div id="message" class="alert alert-danger alert-dismissible fade"></div>
<div class="form-group">
<input type="text" class="form-control" id="fname" placeholder="Name*" name="fname" required>
</div>
<div class="form-group">
<input type="email" class="form-control" id="email_address" placeholder="email*" name="email" required>
</div>
<div class="form-group">
<textarea class="form-control" rows="8" name="comment" id="comment" placeholder="Your Message" required></textarea>
</div>
<div class="form-group">
<button type="submit" id="send_form" class="btn v7">Send Message</button>
</div>
</div>
</form>
</div>
</div>
控制器:
public function contact()
{
$data = array(
'name' => $this->input->post('fname'),
'emall' => $this->input->post('email'),
'message' => $this->input->post('message'),
);
$this->db->insert('contact',$data);
echo json_encode($data);
}
【问题讨论】:
-
你能正确获取控制器中
fnameemail_addresscomment的js值吗? -
我不认为这就是发生此错误的原因。
标签: php jquery ajax forms codeigniter