PHP如何只计算单击

时间:2013-02-10 08:12:43

标签: php click counter

如果我点击横幅上的1次我的PHP函数计算它,可能是一些只计算1次点击的解决方案,或创建更快的重定向,用户没有时间点击更多一次?

这是我的功能:

function wp125_adclick() {
    if (isset($_GET['adclick']) && $_GET['adclick'] != "" && ctype_digit($_GET['adclick'])) {
    $theid = $_GET['adclick'];
    global $wpdb;
    $adtable_name = $wpdb->prefix . "wp125_ads";
    $thead = $wpdb->get_row($wpdb->prepare(
        "SELECT target FROM {$adtable_name} WHERE id = %d",
        $theid
    ));
    $theid = $wpdb->escape($theid);
    $update = "UPDATE ". $adtable_name ." SET clicks=clicks+1 WHERE id='$theid'";
    $results = $wpdb->query( $update );
    header("Location: $thead->target");
    exit;
    }
}

1 个答案:

答案 0 :(得分:2)

您可以使用会话变量来计算点击次数。因此,您可以避免计算多次点击。

if(!isset($_SESSION['click_already_saved'])) {
    $update = "UPDATE ". $adtable_name ." SET clicks=clicks+1 WHERE id='$theid'";
    $results = $wpdb->query( $update );
    $_SESSION['click_already_saved']=true;
}