我目前已经实现了一个点击计数器,如果该值设置为null,并且您点击它将更新为一个的链接。但是当它第二次点击时它没有更新它的保持为一个。
public function getUpdateClick($Id) {
$Id=DB::escape_string($Id);
$i=1;
$click=0;
$click=$click+$i;
$updatesArray=array('clicks'=>$click);// the column which is going to be updated
$this->setTable('pages'); //setting the table name
$where="id=$Id";
$result=$this->update($updatesArray,$where); // query executed
}
答案 0 :(得分:0)
$click=0;
$click=$click+$i;
删除第一行并将$ click的值存储为会话变量或将其存储在数据库中。
答案 1 :(得分:0)
在您的函数中,您应首先检查特定页面clicks
表的pages
是否有值where id=$id
。clicks=1
。如果没有,则可以提供clicks
,否则获取该值并添加1。
但这是我的方法:我通过在public function getUpdateClick($Id){
$Id=DB::escape_string($Id);
//You can edit the 3 lines below to check the database
// in pages table in clicks column where id=$Id in your custom way
$fetching sql_result = mysql_query('SELECT * FROM pages where id=$Id')
$row = mysql_fetch_assoc($fetching sql_result);
$current_number_of_clicks = $row['clicks'];
$click= $current_number_of_clicks;
$click=$click+1;
$updatesArray=array('clicks'=>$click);// the column which is going to be updated
$this->setTable('pages'); //setting the table name
$set="click=click+1"; // column and value
$where="id=$Id"; //
$result=$this->update($updatesArray,$where); // query executed
}
} // I assume this closes your class
列中禁用ALLOW NULL来编辑表格,这样默认情况下,当创建新页面时,它的默认值为0 即可。然后我会使用下面的代码:
{{1}}
答案 2 :(得分:0)
每次调用该函数时,$ click的值设置为0,然后在下一个语句中设置为1。如果希望值保持不变,则应在表中使用属性,并在每次单击时将其递增。