พอมีใครช่วยบอกเป็นวิทยาทานได้ไหมครับว่า...แบบเนี้ย (ตัวอย่าง...ตัวสีแดงๆ) ที่นับจำนวนคนเปิดอ่านบทความ เขาทำกันยังไง?
--------------------------------------------------------------------------
1 December 2006 (เปิดอ่านแล้ว 236 ครั้ง)
การสำแดงออกทางศิลปะของนาระ (Yoshitomo Nara) ที่ใช้รูปเด็กเป็นสื่อในการแสดงออก แต่กลับให้ความรู้สึกหม่นเศร้า และลึกลับอย่างน่าประหลาด บรรยากาศที่ส่งออกมาจากผลงาน ทำให้ผมรู้สึกสะดุด งานของเขาเหมือนกำลังอยู่ในฝันร้าย แต่เป็นฝันร้ายที่อยู่บนความไร้เดียงสาของเด็กๆ
-------------------------------------------------------------------------
ต้องใช้โค๊ด php แบบไหนครับ ถึงจะทำให้หน้าที่เลือกบทความ หน้า index.php สามารถจะรู้จำนวนครั้งของคนที่เปิดอ่านบทความ ในแต่ละบท (ซึ่งอยู่ในหน้าอื่น เช่น article_01.php , article_02.php) ได้....พอดีเจ้าแอนนน...บอกให้ผมถามในนี้ ก็ลองดูครับ
ลองเอาโค้ดนี้ไปศึกษา (หรือใช้) ดูครับ
http://www.tizag.com/tools/counter.php
คอนเซ็ปต์ก็ประมาณว่า เปิดดูแต่ละครั้ง เรียกไฟล์ขึ้นมาเพิ่มจำนวน
แล้วพอจะอ่านออกเสียง ก็เรียกไฟล์มาอ่าน
แต่ไม่ได้ดัก IP Address นะครับ รู้สึก :08:
// เพิ่มเติม อันนี้โจ่งแจ้งกว่าเยอะครับ
http://www.host45.com/resources/phpexamples.php
<?php
###########################################################################
#
# PHP Counter script.
#
# Copyright 2006 Host45.com, Inc.
# Web and Email Hosting
# http://www.host45.com
#
###########################################################################
if(!file_exists("counter.txt")) {
die("Unable to open the counter.txt file! Please create it and set correct permissions.<br>");
} else {
$file = fopen("counter.txt", "r");
$num = fgets($file,4096);
$num += 1;
fclose($file);
$file2 = fopen("counter.txt", "w");
fputs($file2, $num);
fclose($file2);
}
echo "This page has been viewed " . $num . "times.";
?>
ขอบคุณมากครับคุณซาฟิเร่ แต่ดูๆ แล้วก็ยังงงหน่อยๆ เพราะผมไม่มีพื้นฐานด้านการเขียนโปรแกรมเลย ถ้าอย่างนั้นจะต้องเอาโค๊ดนี้ ไปแปะไว้ระหว่าง วงเล็บสีแดง (เปืดอ่านแล้ว <?php code> ครั้ง) ในหน้า index.php ตามแต่ละหัวข้อ (มีหลายบทความให้เลือก) ในหน้าเลือกบทความ แล้วจะโยงจากหน้าอื่นเช่น article_o1.php , article_02.php , article_03.php มายังไงหรือครับ จะได้ไม่ปนกัน ต้องสร้าง counter.txt เป็น counter_01.txt , counter_02.txt อย่างนี้หรือเปล่าครับ... :09:
อย่างนั้นก็ได้ครับ :42:
หรืออาจจะทำเก็บไว้ไฟล์เดียวก็ได้
แล้วก็แบ่งบรรทัดเก็บ
ตรงนี้ไม่ทราบเหมือนกัน ว่าอย่างไหนมันจะดีกว่ากันในแง่ไหน
สำหรับผม ออกมาเป็นตัวเลขได้ก็พอใจแล้วครับ {หมีโหด}
อาจจะหาสคริปต์สำเร็จรูปจากอินเทอร์เน็ตมาใช้ก็ได้ครับ :42:
http://www.google.com.hk/search?hl=en&client=firefox&rls=org.mozilla%3Aen-US%3Aunofficial&hs=rbH&q=php+counter&btnG=Search&meta=
เอ...น่าสนใจครับ ถ้าต้องการให้แบ่งบรรทัดเก็บในไฟล์ counter.txt ตัวเดียวกันจะต้องเขียนยังไงครับ... :09:
จริงใช้อย่างอื่นแบ่งก็ได้ครับ เช่น ในที่นี้ผมจะโมเมใช้ :: เป็นตัวแบ่ง
ในไฟล์ counter.txt ของผมก็จะอยู่ในรูปลักษณะนี้
0||0::1||0::2||0
ประมาณว่า
เลขประจำหน้า||จำนวนครั้งที่กด::เลขประจำหน้า||จำนวนครั้งที่กด
ทีนี้ สมมุติว่าผมต้องการเปลี่ยนอันที่สอง คือ 1||0
<?php $file = "counter.txt"; // กำหนดที่ตั้งไฟล์
$thefile = fopen($file, "r"); // เปิดไฟล์มาเพื่ออ่าน
$content = fread($thefile, filesize($file)); // เอาข้อมูลจากไฟล์มาให้หมด
$ex = explode("::", $content); // แยกเนื้อหาที่ได้ออกจากกันโดยใช้ :: แล้วแปลงเป็น array
$exp = explode('||', $ex[0]); // แยกอีก คราวนี้จะเอาตัวจำนวนครั้งที่กดโดยใช้ || เป็นตัวแยก
$new = str_replace($ex[0], $exp[0].'||'.($exp[1]+1), $content); // แทนที่อันเดิมซะ
fclose($thefile); // ปิดไฟล์
$thefile = fopen($file, "w"); // เปิดเพื่อเขียน ลบทิ้งของเดิมหมด
fputs($thefile, $new); // เขียนที่ได้รับการแทนที่แล้ว
fclose($thefile); // ปิดไฟล์ ?>
มั้งครับ :08:
โอ้ เจ๋งๆ :25: (+2)
.
คล้ายๆ กับอะไรหลายอย่างแหละครับ
เช่นคำตอบจากคำถาม
เราจะใช้วิธียังไงก็ได้
ขอให้ได้คำตอบเป็นพอ
:01:
ไม่ได้นะ...
ผลลัพธ์เหมือนกัน แต่โค้ดไม่ดีอาจทำเว็บล่ม :05:
เชื่อตู
อ้างคำพูดจาก: ลุงเอ๊ะ เมื่อ 06 ธ.ค. 2006, 20:15 น.
พอมีใครช่วยบอกเป็นวิทยาทานได้ไหมครับว่า...แบบเนี้ย (ตัวอย่าง...ตัวสีแดงๆ) ที่นับจำนวนคนเปิดอ่านบทความ เขาทำกันยังไง?
--------------------------------------------------------------------------
1 December 2006 (เปิดอ่านแล้ว 236 ครั้ง)
การสำแดงออกทางศิลปะของนาระ (Yoshitomo Nara) ที่ใช้รูปเด็กเป็นสื่อในการแสดงออก แต่กลับให้ความรู้สึกหม่นเศร้า และลึกลับอย่างน่าประหลาด บรรยากาศที่ส่งออกมาจากผลงาน ทำให้ผมรู้สึกสะดุด งานของเขาเหมือนกำลังอยู่ในฝันร้าย แต่เป็นฝันร้ายที่อยู่บนความไร้เดียงสาของเด็กๆ
-------------------------------------------------------------------------
ต้องใช้โค๊ด php แบบไหนครับ ถึงจะทำให้หน้าที่เลือกบทความ หน้า index.php สามารถจะรู้จำนวนครั้งของคนที่เปิดอ่านบทความ ในแต่ละบท (ซึ่งอยู่ในหน้าอื่น เช่น article_01.php , article_02.php) ได้....พอดีเจ้าแอนนน...บอกให้ผมถามในนี้ ก็ลองดูครับ
เดาว่ามาจากเว็บประเภทข่าวหรือรวมบทความ
เว็บพวกนี้มันเก็บเป็นฐานข้อมูลทั้งหมดอยู่แล้ว
สมมติเอาง่ายๆ เขาเก็บข่าวไว้ในตารางนึง มี field ต่างๆ ที่เกี่ยวกับข่าว ถ้าต้องการให้สามารถนับจำนวนคนที่เปิดอ่านข่าวนี้ได้ ก็แค่เพิ่ม field ให้นับจำนวนคนอ่านเพิ่มเข้าไปในตาราง
[table : News]
id
NewsSubject
NewsContent
NewsDate
NewsReference
CountRead
เวลาเขาเปิดหน้าข่าว จะเห็นว่าเขาจะต้องส่งตัวแปรคือ id ของข่าวที่จะแสดงไปด้วย
เช่น news.php?id=5
ตัวนี้เป็นตัวกำหนดว่าจะไปเรียกข่าวจากตาราง (สมมติว่าชื่อ) news ที่บรรทัดหรือ record ไหน
เสร็จแล้วภายในหน้าที่เปิดอ่านข่าวนั้นก็ใส่โค้ดให้ update จำนวนคนอ่าน +1 ทุกครั้งที่เรียกอ่าน
เช่น
$query1=mysql_query("select CountRead from News where id=$id");
$getcount=mysql_result($query1, 0);
$getcount=$getcount+1;
$query2=mysql_query("update News set CountRead=$getcount where id=$id");
เอาล่ะครบแล้ว ทั้งเก็บลงไฟล์ เก็บลง mysql :12:
ขอบคุณมากๆ เลยครับ Thanks... :40: