单击时如何使点击计数器更新多次?

时间:2013-03-31 07:56:30

标签: php mysql

我目前已经实现了一个点击计数器,如果该值设置为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
}

3 个答案:

答案 0 :(得分:0)

$click=0;
$click=$click+$i;

删除第一行并将$ click的值存储为会话变量或将其存储在数据库中。

答案 1 :(得分:0)

在您的函数中,您应首先检查特定页面clicks表的pages是否有值where id=$idclicks=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。如果希望值保持不变,则应在表中使用属性,并在每次单击时将其递增。