我正在尝试编写一个脚本,将当前正在查看的视频添加到收藏夹数据库中。但是,每次运行时,都会返回错误,并且数据库中不会存储任何内容。
这是JQuery
$(document).ready(function() {
$("#addfav").click(function() {
var form_data = {heading: $("#vidheading").text(), embed : $("#vidembed").text()};
jQuery.ajax({
type:"POST",
url:"localhost/stumble/site/add_to_fav.php",
dataType: "json",
data: form_data,
success: function (data){
console.log(data.status);
alert("This Video Has Been Added To Your Favourites")
},
error: function (data){
console.log(data.status);
alert("You Must Be Logged In to Do That")
}
});
})
})
add_to_fav.php就是这个......
public function add_to_fav(){
$this->load->model('model_users');
$this->model_users->add_favs();
}
add_favs功能位于
之下public function add_favs(){
if($this->session->userdata('username')){
$data = array(
'username' => $this->session->userdata('username'),
'title' => $this->input->post('heading'),
'embed' => $this->input->post('embed')
);
$query = $this->db->insert('fav_videos',$data);
if($query){
$response_array['status'] = 'success';
echo json_encode($response_array);
}}else {
$response_array['status'] = 'error';
echo json_encode($response_array);
}
}
感谢您的输入,这让我陷入困境,但我知道这可能是相对简单的事情,我的预感是它与返回成功或错误有关。
答案 0 :(得分:0)
尝试
$(document).ready(function() {
$("#addfav").click(function() {
var form_data = {heading: $("#vidheading").text(), embed : $("#vidembed").text()};
jQuery.ajax({
type:"POST",
url:"http://localhost/stumble/Site/add_to_fav",
dataType: "json",
data: form_data,
success: function (data){
console.log(data.status);
alert("This Video Has Been Added To Your Favourites")
},
error: function (data){
console.log(data.status);
alert("You Must Be Logged In to Do That")
}
});
})
})
还要在javascript中使用base_url。在模板视图中: -
<script>
window.base_url = "<?php echo base_url(); ?>";
</script>
现在你可以在所有的ajax脚本中使用base_url。