Tôi có một tệp chuỗi diễn đàn thread.php
nhận thông tin ID chủ đề.Cập nhật chế độ xem duy nhất bằng cookie
Ví dụ:
thread.php?id=781
Tôi đang cố gắng để tạo ra một thiết lập quan điểm độc đáo, nhưng tôi không có ý tưởng nếu điều này là thực sự khả thi:
thread.php
:
topicId = <?php echo $_GET['id']; ?>;
if ($.cookie("unique"+topicId)!=="1") {
$.cookie("unique"+topicId,1,{expires: 1000, path: '/'}); // create cookie if it doesn't exist
$.post('unique.php',{id:topicId}); // update thread unique views
}
unique.php
// connection stuff
$id = mysqli_real_escape_string($conn,$_POST['id']);
mysqli_query($conn,"UPDATE topics SET unique_views=unique_views+1 WHERE id='$id'");
Điều này sẽ tạo cookie mới cho từng chuỗi khác nhau. Vì vậy, nếu người dùng xem 100 chủ đề, họ sẽ có 100 cookie được lưu trữ. Tôi lo lắng nếu tạo một cookie mới cho mỗi chủ đề là quá nhiều. Có ổn không hoặc có cách nào tốt hơn để làm điều đó không?
Chỉ cần một câu hỏi - kể từ khi nó cần phải kiểm tra xem topicId được thiết lập với giá trị "1" trong vòng một mà cookie lớn và cũng thực sự cần lưu trữ giá trị cookie của "1", làm cách nào tôi làm điều đó và thiết lập câu lệnh if? – frosty
Ok, đối với tôi nếu bạn chỉ muốn lưu các chủ đề được truy cập, bạn nên sử dụng một mảng id như ** var topicsId_array = [1, 2, 4, 26]; ** (đơn giản và hiệu quả), vì vậy chỉ trong mảng nên giữ nguyên các chủ đề được đặt thành 1 (và xóa các chủ đề khác).Nhưng nếu bạn không phải là trường hợp của bạn và bạn cần phải lưu trữ dữ liệu bổ sung (chẳng hạn như số lượt xem hoặc bất kỳ điều gì khác), bạn có thể sử dụng một mảng các đối tượng và lưu trữ tất cả những gì bạn muốn. Stringify cũng sẽ hoạt động khá tốt. Ở đây bạn có một ví dụ: [http://jsfiddle.net/y11zLra7](http://jsfiddle.net/y11zLra7) –