10/10/2018, 10:57

Cách đếm số lần click

Chào mọi người mình có các baner quảng cáo trên website..! trong DATABASE có thông tin baner là đường dẫn và hình ảnh..
Khi click vào baner thì liên kết tới các trang web khác theo đường link..!

Mong mong người giúp mình đếm được số lần Click vào baner đấy trên website..!

Em mới học mong mọi người chỉ giúp dễ hiểu vào nhé..!
salala-bacala viết 12:59 ngày 10/10/2018
Mình có nhiều module viết sẳn quản lý vụ này bạn download về sài cho chắc ăn khỏi viết lại.
thq viết 13:01 ngày 10/10/2018
thay vì bạn đặt link trực tiếp đến trang www.google.com vào banner thì bạn đặt lại thành go.php?url=www.google.com
trong trang go.php bạn làm 2 việc
1. ++ số lần click
2. header("location:$_GET['url']);
viết 13:08 ngày 10/10/2018
Anh thq có thể chỉ rõ hơn hộ em được không em không làm trên Google mà em làm trên website của mình để biết được lượng click vào baner quảng cáo ví dụ như để tính phí...! anh demo cho em ít lệnh nhé em mới học PHP..
Thanhk nhiều..!
thuyduongcd viết 12:59 ngày 10/10/2018
Ví dụ trong table banner có
ID: id hình ảnh
image: hình ảnh banner hiển thị
url: link đích
counter: số lần click
Truy vấn lấy ra image ($img) và id ($id)

Ở trang hiển thị banner đặt code
Code:
<a href="http://domain.name/ads.php?id=<?php echo $id; ?>"><img src="<?php echo $image; ?>" /></a>
Thêm 1 trang đặt ads.php, trang này khi được gọi (do user click ở trang chủ) đầu tiên dùng $_GET['id'] để xác định xem banner nào được click.
Sau đó truy vấn DB lấy giá trị counter của record tương ứng, cộng thêm 1 và update trở lại.
Và cuối cùng là redirect tới url của banner tương ứng với id đó.
xuandinh3081991 viết 13:08 ngày 10/10/2018
Đã làm tương tự như hướng dẫn nhưng không hiểu sao nó chỉ tăng có 1 lần, sau click lại không thấy giá trị count tăng.
code ads.php
PHP Code:
<?php
    
include('config.php');
    if(isset(
$_GET***91;'id'***93;)){
        
$sql = @mysql_fetch_array(mysql_query("SELECT count, link FROM ads WHERE id='$_GET***91;id***93;'"));
        
$count $_GET***91;'count'***93;;
        
$count++;
        
$link $sql***91;'link'***93;;
        @
mysql_query("UPDATE ads SET count='$count' where id='$_GET***91;id***93;'");
        
header("Location: $link");
    }
    
?>
thuyduongcd viết 13:12 ngày 10/10/2018
Có khả năng là do cache.
Lần đầu click thì nó ra link ads.php?id=***.
Lần thứ hai click cũng link giống như vậy nên trình duyệt lấy từ trong cache show ra. Thử thêm chuối random vào trong link xem.
xuandinh3081991 viết 13:06 ngày 10/10/2018
Được gửi bởi thuyduongcd
Có khả năng là do cache.
Lần đầu click thì nó ra link ads.php?id=***.
Lần thứ hai click cũng link giống như vậy nên trình duyệt lấy từ trong cache show ra. Thử thêm chuối random vào trong link xem.
Lấy random id thì đâu có ra ads mình mong muốn
thuyduongcd viết 13:02 ngày 10/10/2018
http://domain.name/ads.php?id=2&rnd=xyz
vzic viết 12:59 ngày 10/10/2018
Khi tạo link bạn thay href="domain.com" thì bằng href="click.php?id= khóa chính của table.
- Trong Table bạn lưu như cấu trúc sau chả hạn: table: click
Fields: id,link,click
- Mỗi lần nhận từ click.php?id= bạn lấy $_GET['id']
- Select fields "link" từ table click ra. Đồng thời "update click set click=(click+1) where id=".$_GET["id"] luôn.
Xong dùng header location redirect qua link lấy được đó là oke.
Trên chỉ là miêu tả sơ lược thôi. Khi code còn tùy bạn gán biến id, link, kiểm tra id có phải là số 0 nữa cho hoàn thiện .
Bài liên quan
0