PDA

View Full Version : Đếm số lượt xem trên một chủ đề bằng php



trunghieuhf
15-01-2010, 13:35
Các bạn chỉ cho mình các làm được không ?
Ở đây mình muốn là mỗi người dù tải lại trang đó bao nhiêu lần thì chỉ tính làm 1 lần duy nhất.

kysu
15-01-2010, 15:01
Theo mình bạn hãy kết hợp Session và Cookie.

trunghieuhf
16-01-2010, 09:46
Bạn có thể nói rõ hơn được không.

ngoc_viet08
16-01-2010, 11:15
google it . coder thì khả năng tự research và tự search with google phải cao :D

trunghieuhf
16-01-2010, 12:12
thì trình mình chưa cao nên mới hỏi các bạn. Nếu các bạn nói giúp mình thì là ok nhất.

trunghieuhf
19-01-2010, 12:17
các bạn chỉ mình cách làm với.

ngoc_viet08
19-01-2010, 15:55
vấn đề này hồi tớ tự làm tớ tự google và tự giải quyết , coder mấy thứ lặt vặt này ko làm nổi , e sau này thất nghiệp đó bạn .
google đi , tớ thấy đầy rẫy ra.

hoainguyenduc
19-01-2010, 18:30
vấn đề này hồi tớ tự làm tớ tự google và tự giải quyết , coder mấy thứ lặt vặt này ko làm nổi , e sau này thất nghiệp đó bạn .
google đi , tớ thấy đầy rẫy ra.

Thì chí ít bác cũng chỉ cho người ta nơi cụ thể để người ta tìm kiếm chư, hoặc chí ít thì cũng chỉ cho người ta cách tìm cái đó trên google như thế nào! chỉ như kiểu của bác thì thà khỏi nói người ta còn vui hơn!

Katsumoto
19-01-2010, 19:32
Mình dùng 1 biến lưu id chủ đề.
Nếu null gán bằng id chủ đề hiện tại, tăng số lần xem chủ đề lên 1.
Nếu khác kiểm tra
Nếu khác id chủ đề hiện tại, gán bằng id chủ đề hiện tại tăng số lần lên 1
Hi vọng giúp được bạn.

trunghieuhf
19-01-2010, 21:06
vấn đề này hồi tớ tự làm tớ tự google và tự giải quyết , coder mấy thứ lặt vặt này ko làm nổi , e sau này thất nghiệp đó bạn .
google đi , tớ thấy đầy rẫy ra.

Hai câu trả lời của bạn đều như nhau, không giúp mình được chút nào cả, gần như là spam vậy. Search trên google là việc tất nhiên là làm đầu tiên rồi, nhưng không tìm được cách làm như mong muốn nên mới vào đây hỏi các bạn, không thì mất thời gian viết làm gì. Còn việc bạn bảo đây là việc nhỏ nhặt..., đúng vậy, nhưng bạn thử nghĩ xem, mình làm code php đều là tự đọc, không qua khóa học, cũng không đọc nhiều về lý thuyết thì tất nhiên làm có những cái bạn cho là dễ thì mình chưa làm được. Cũng như đứa trẻ nó mới vào lớp 1, bạn hỏi nó 1 + 1 = ?, nó không biết thì bạn bảo nếu không biết làm thì sau này làm sao làm nên chuyện gì..., nói thế liệu có đúng và sớm quá không.
Mong bạn suy nghĩ lại cách viết câu trả lời của mình. Viết như bạn thì thà bạn đọc qua câu hỏi rồi nói rằng thằng này gà quá còn hơn là viết mấy dòng như vậy. Có thể bạn ngại viết, nhưng chỉ cần bạn viết 1 số gợi ý là mình cũng rất cảm ơn rồi. Hy vọng bạn đọc được comment này.

ngoc_viet08
20-01-2010, 00:22
vào google với từ khóa " đếm số lượt truy cập php "
http://www.google.com.vn/#hl=vi&source=hp&q=%C4%91%E1%BA%BFm+s%E1%BB%91+l%C6%B0%E1%BB%A3t+tr uy+c%E1%BA%ADp+php&btnG=T%C3%ACm+v%E1%BB%9Bi+Google&meta=&aq=0&oq=%C4%91%E1%BA%BFm+s%E1%BB%91+l%C6%B0%E1%BB%A3t+t ruy+c%E1%BA%ADp&fp=8536ff91d51ce1a7
thấy 1 mớ kết quả xài ok .
thử cái này xem :|

http://www.nhatnghe.com/forum/showthread.php?t=55592
còn code của tớ hồi mới code

if (is_numeric($_GET["id"]))

$id=$_GET["id"];

$cookieName='article_'.$id;

if(!isset($_COOKIE["$cookieName"]))

{

setcookie("$cookieName","1",time()+3600);

mysql_query("UPDATE `article` SET `view`=`view`+1 WHERE `id`='$id' ");

}
mình thường xài cookie hơn , cookie chừng 30p-1h , vì chả ai read mãi 1 cái bài viết cả tiếng đồng hồ .
đếm số lượt 1 bài viết cũng tương tự như đếm số truy cập , có khác là vì có nhiều bài viết nên cần tạo ra nhiều cookie khác nhau .
cách làm tóm gọn như trên :
1.lấy số id từ url và ghép vào tạo thành tên cookie cho bài viết đó .
2.kiểm tra xem cookie trên đã tồn tại chưa ? nếu chưa thì set cookie 1h và tăng số lượt view trong table lên vì lúc này với client là lần xem đầu tiên .
có vậy thôi , đơn giản ngắn gọn . tất nhiên để đảm bảo hiển thị đúng thì code trên nên chạy trước khi echo số lượt xem của bài viết . nhớ kết nối mysql .
ko phải là tớ lười , mà tớ mún bạn tự tìm tòi , tự suy ngẫm , phân tích rùi có gì khúc mắc , khó khăn hãy nhờ mọi người :D

kenphan19
20-01-2010, 08:57
vào google với từ khóa " đếm số lượt truy cập php "
http://www.google.com.vn/#hl=vi&source=hp&q=%C4%91%E1%BA%BFm+s%E1%BB%91+l%C6%B0%E1%BB%A3t+tr uy+c%E1%BA%ADp+php&btnG=T%C3%ACm+v%E1%BB%9Bi+Google&meta=&aq=0&oq=%C4%91%E1%BA%BFm+s%E1%BB%91+l%C6%B0%E1%BB%A3t+t ruy+c%E1%BA%ADp&fp=8536ff91d51ce1a7
thấy 1 mớ kết quả xài ok .
thử cái này xem :|

còn code của tớ hồi mới code

mình thường xài cookie hơn , cookie chừng 30p-1h , vì chả ai read mãi 1 cái bài viết cả tiếng đồng hồ .
đếm số lượt 1 bài viết cũng tương tự như đếm số truy cập , có khác là vì có nhiều bài viết nên cần tạo ra nhiều cookie khác nhau .
cách làm tóm gọn như trên :
1.lấy số id từ url và ghép vào tạo thành tên cookie cho bài viết đó .
2.kiểm tra xem cookie trên đã tồn tại chưa ? nếu chưa thì set cookie 1h và tăng số lượt view trong table lên vì lúc này với client là lần xem đầu tiên .
có vậy thôi , đơn giản ngắn gọn . tất nhiên để đảm bảo hiển thị đúng thì code trên nên chạy trước khi echo số lượt xem của bài viết . nhớ kết nối mysql .
ko phải là tớ lười , mà tớ mún bạn tự tìm tòi , tự suy ngẫm , phân tích rùi có gì khúc mắc , khó khăn hãy nhờ mọi người :D

ngẫm suy ko ra rồi mới hỏi ! làm sao you biết là người ta ko suy ngẫm, ngta ko tìm kiếm ??? ... lúc đầu reply thế này có hay hơn ko ??? :D vớ vẫn

ngoc_viet08
20-01-2010, 09:23
ờ tớ thấy tớ vớ vẩn thiệt :D lúc đầu mới học php đi hỏi mà gặp mấy người vậy chắc tớ cắn lưỡi chết mất :D
hỏi nhiều quá , được trả lời ngon nhiều quá tớ thấy mình càng ngày càng ít tự mày mò nghiên cứu quá , tâm lý ý lại ghê gớm , ko suy nghĩ tìm cách học cho hiệu quả , đụng cái hỏi :D

trunghieuhf
20-01-2010, 13:43
Nếu dùng cookie thì nếu người dùng không đặt chế độ cookie trên trình duyệt thì phải làm thế nào.
Cho mình hỏi hiện nay cách làm phổ biến trong việc đếm số lượt truy cập là cách nào:
+ Mỗi lần click vào link hoặc F5 thì tính là 1 lần view
+ Một người dù vào bao nhiêu lần cũng chỉ tính là 1
+ Cứ sau 1 khoảng thời gian nhất định thì tính thêm 1 lần view.

ngoc_viet08
20-01-2010, 15:48
ở đây ko có giải pháp nào hoàn chỉnh cả , mình chỉ làm chính xác tương đối thôi . chuyện tắt chế độ cookie e là hiếm , nên ko cần tính toán cho mệt .

cách phổ biến theo mình là dùng cookie+session sau 1 khoảng thời gian nào đó . 15p-30p-1h
sau khoảng thời gian trên tính từ lần vào đầu tiên của khách, nếu khách vào thì tính 1 lần nữa .

3 cách trên :
- cách 1 là dành cho newbie .còn lại chả ai làm thế :lick:
- cách 2 cũng ko khả thi , set session thì sau khi tắt trình duyệt vào lại sẽ khởi động session mới . set cookie thì chỉ có tác dụng với computer đó chứ ko phải với người đó . thành ra nếu quán dịch vụ thì nhiều người vào cũng chỉ tính 1 lần :D

nói chung ko có giải pháp chính xác tuyệt đối , tương đối thôi :D

trunghieuhf
20-01-2010, 16:07
Cảm ơn ý kiến đóng góp của bạn.