我的數據庫中有一個views列。我想在點擊超鏈接訪問特定頁面時用+1更新列。我正在使用jQuery,Ajax和codeigniter。我無法做正確的事情,以觸發數據庫中的更新。請幫助我失去什麼。在codeigniter中使用jQuery Ajax更新數據庫中的列
下面是我的代碼:
HTML
<a href="<?php echo base_url(); ?>site/details/<?php echo $value->hid; ?>" name="hid" id="clicker">
JS
$(document).ready(function(){
$("a#clicker").click(function(){
$.ajax({
type: "POST",
url: "<?php base_url(); ?>site/traffic",
success: function(data){
alert("I got a view");
console.log(data);
}
});
});
});
控制器
public function traffic(){
$id = $this->input->post("hid");
$this->My_model->updateView($id);
}
型號
public function updateView($id = NULL, $data){
$this->db->set('view', 'view+1');
$this->db->where('id', $id);
$this->db->update($this->table, $data);
}
謝謝Dhaniram和manuman94。但我還沒有解決我的問題。 Evertything保持不變。我可以選擇適當的'id',但無法更新表格列。有人建議,也許我先爲該列做一個選擇,然後增加值。老實說,我不知道如何實現這個目標,我嘗試了一些技巧,並且在各處都遇到了錯誤。 – pimpace
我最終沒有jQuery的一面工作。我所做的只是將更新查詢放入細節模型函數中。和中提琴,它現在起作用。儘管jQuery確實獲取了所需的數據。也許我會利用它在我的項目的其他領域的使用。 但是,我會投票manuman94的建議。它效果最好,尤其是他的Ajax部分。 謝謝大家。 – pimpace
這是一個可憐的,但是,你有它的工作。不客氣,謝謝大拇指! – manuman94