Home Webboard ArticlesKnowledges  
ข่าวประกาศ:

:: กติกา มารยาท ในการใช้งานเว็บบอร์ด ::
กรุณากรอกอีเมล์จริงในการสมัคร และรับอีเมล์ยืนยันเพื่อใช้งานในบอร์ด

ผู้เขียน หัวข้อ: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)  (อ่าน 48721 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ UnclEo

  • Just Staff
  • *
  • กระทู้: 463
  • เห็นด้วย&ขอบคุณ: 439
  • เพศ: ชาย
  • !Personal
    • DexMoreGroup
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #45 เมื่อ: 09, มีนาคม 2012, 09:22:46 AM »
ตรง time threshold จะกำหนดเป็นนาทีครับ โดยใช้ฟังก์ชั่น min เพื่อให้หาค่าที่ต่ำสุดใน range ที่กำหนดนั้นๆออกมา

// Prevent absurd boundaries here - make it a day tops.
	
	
if (isset(
$_POST['lastActive']))
	
	
	
$_POST['lastActive'] = min((int) $_POST['lastActive'], 1440);


ตรงนี้ (int) $_POST['lastActive'] ถ้าใส่ค่า Last Active ที่เกินกว่า 1440 เข้าไป (ซึ่งก็คือเกิน 1 วันนั่นเอง) ฟังก์ชั่น min จะคืนค่าที่ต่ำกว่ามาให้ ซึ่งก็คือ 1440
ดูตรงคำอธิบายก็ได้ครับ "Prevent absurd boundaries here - make it a day tops." แปลเป็นไทยก็ประมาณว่า เพื่อป้องกันการใส่ค่าที่ไม่เหมาะสม จึงกำหนดให้ 1 วันหรือ 1440 นาทีเป็นค่าสูงสุดที่กรอกได้ (ถ้ากรอกตัวเลขที่มากกว่า 1440 ฟังก์ชั่น min จะทำหน้าที่คืนค่าที่ต่ำกว่าค่าที่กรอกมาให้ ซึ่งก็คือ 1440 นั่นเอง)
เพราะฉะนั้นถ้าอยากให้บันทึกค่าใน 1 วัน ก็กรอก 1440 ไปหรือจะกรอกตัวเลขมากกว่านั้นก็ได้ครับ มันจะคืนค่า 1440 มาให้อยู่ดี

แล้วถ้าอยากเก็บเกิน 1 วันหรือ 1440 นาทีหล่ะ
แก้ตัวเลข 1440 ในโค้ดนั้นเป็นตัวเลขที่ต้องการครับ เช่น 1800 ก็จะเก็บได้ 1800/60 = 30 ชั่วโมง หรือหนึ่งวันกับอีก 6 ชั่วโมง
แต่อย่างว่าแหละครับ เก็บเกิน 1440 มันก็ดูไร้สาระแล้วก็ไม่สมเหตุสมผลละ ความคิดผมนะ

เออ..แฮะ..

ไม่เคยแงะโค้ดตรงนี้ดูสักที เพราะใช้ค่าเดิม 15 นาทีตลอด
ที่นี่! DexMore.Com ลมหายใจแห่ง SMF เราอัพเดททุกลมหายใจ SMF 100++ mod แห่งเดียวในโลก SMF 2.0 แปลไทย 100%

ออฟไลน์ PakOJanG

  • Just
  • **
  • กระทู้: 140
  • เห็นด้วย&ขอบคุณ: 23
  • เพศ: หญิง
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #46 เมื่อ: 09, มีนาคม 2012, 12:48:04 PM »
แล้วปุ้มต้องทำยังไงค่ะ รู้สึกว่าจะทำแบบที่ปุ้มต้องการไม่ได้ มั้ง...ขอบคุณค่ะ

ออฟไลน์ zelda

  • Just Staff
  • *
  • กระทู้: 474
  • เห็นด้วย&ขอบคุณ: 543
  • เพศ: ชาย
    • www.izedzine.com
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #47 เมื่อ: 09, มีนาคม 2012, 03:59:12 PM »
ถ้าตั้งค่าถูกแล้ว ก็ลองตรวจสอบโค้ดนี้ในไฟล์ BoardIndex.template.php ดูครับ

', $txt[140], ':<br />', implode('', $context['list_users_online]);

ตรงนี้คือโค้ดที่จะ flush เอารายชื่อคนออนไลน์ออกมา โดยมีเงื่อนไขมาจาก

if (!empty($context['users_online']))

เพราะปกติการติดตั้ง SMF แบบเดิมๆ ก็จะแสดงรายชื่อคนออนไลน์ออกมาอยู่แล้วโดยไม่ต้องปรับอะไรเพิ่มเติม

ออฟไลน์ PakOJanG

  • Just
  • **
  • กระทู้: 140
  • เห็นด้วย&ขอบคุณ: 23
  • เพศ: หญิง
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #48 เมื่อ: 11, มีนาคม 2012, 06:20:41 PM »
ขอบคุณพี่ๆ ทุกคนที่ให้คำแนะนำนะค่ะ

ออฟไลน์ nakdham

  • Just
  • **
  • กระทู้: 63
  • เห็นด้วย&ขอบคุณ: 19
    • nakdham.com
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #49 เมื่อ: 15, มิถุนายน 2012, 02:47:44 PM »
วันนี้ว่างๆเลยลองทำมือนวลเอาครับ

1. ดาวโหลดไฟล์มาก่อนเลย
http://custom.simplemachines.org/mods/index.php?mod=217 (Credit : เซียวเหล่งนึ่งฯ )
ของเลือกเป็นไฟล์นี้ Users_Online_Today_2.0.2.zip
จากนั้นแตกไฟล์เอาไว้รอเลย

2. แก้ไฟล์ 

./Sources/BoardIndex.php
หาโค๊ต

โค๊ด: [Select]
$context += getMembersOnlineStats($membersOnlineOptions);


วางต่อด้วย

โค๊ด: [Select]

// Get the user online today list.
$context += getUsersOnlineTodayStats();




./Themes/default/BoardIndex.template.php

ค้นหา
โค๊ด: [Select]
// If they are logged in, but statistical information is off... show a personal message bar.


วางไว้ก่อนหน้าที่ค้นหา
โค๊ด: [Select]
// Users Online Today
echo '
<div class="title_barIC">
<h4 class="titlebg">
<span class="ie6_header floatleft">
<img class="icon" src="', $settings['images_url'], '/icons/online.gif', '" alt="', $txt['online_users'], '" />', $txt['uot_users_online_'.$modSettings['uot_setting_period']], '
</span>
</h4>
</div>
<p class="inline smalltext">';
echo
$txt['uot_total'], ': <b>', $context['num_users_online_today'], '</b>';

if ($context['viewing_allowed'])
echo
' (', $txt['uot_visible'], ': ', ($context['num_users_online_today'] - $context['num_users_hidden_today']), ', ', $txt['uot_hidden'], ': ', $context['num_users_hidden_today'], ')';

// Assuming there ARE users online... each user in users_online has an id, username, name, group, href, and link.
if (!empty($context['users_online_today']) && $context['viewing_allowed'])
{
echo
'<br />', implode(', ', $context['list_users_online_today']);
}
echo '
</p>';



3. เอาไฟล์ Subs-UsersOnlineToday.php ที่โหลดมาตอนแรก ไปไว้ในโฟรเดอร์ "./Sources".

4. เอาไฟล์ "lang/UsersOnlineToday.english.php  ไปไว้ในโฟรเดอร์  ./Themes/default/languages".
หากในบอร์ดใช้ภาษาที่เป็น Utf8 ให้โหลดไฟล์ตัวนี้ไป  "lang/UsersOnlineToday.english-utf8.php ไปไว้ในโฟรเดอร์  ./Themes/default/languages".
สำหรับภาษาไทย ให้ Copy ไฟล์ตัวนี้ UsersOnlineToday.english-utf8.php แล้วเปลี่ยนชื่อไฟล์เป็น UsersOnlineToday.thai-utf8.php แล้ว ไปไว้ในโฟรเดอร์  ./Themes/default/languages".

5. เอาไฟล์  install.php  ไปไว้ในโฟรเดอร์ "./webboard". หรือ forum  จากนั้นทำการ  install โดยไปที่ http://www.ชื่อเว็บ.com/webboard/install.php
เมื่อรันแล้วจะข้อความว่าติดตั้งเรียบร้อย  จากนั้นลบไฟล์ install.php ออกได้เลย
ถือว่าเป็นอันเสร็จสมบูรณ์

ตัวอย่าง : http://www.nakdham.com/webboard/


ออฟไลน์ kon accord99

  • J
  • กระทู้: 34
  • เห็นด้วย&ขอบคุณ: 1
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #50 เมื่อ: 14, สิงหาคม 2012, 01:03:00 AM »
งั้นเอาใหม่ 
ให้ทำตามนี้ 

1. ก่อนอื่นโหลดไฟล์ม็อดมาก่อน จากลิงก์
http://custom.simplemachines.org/mods/index.php?mod=217
จากนั้นแตกไฟล์เอาไว้รอเลย

2. แก้โค๊ดตามนี้

/Sources/BoardIndex.php
ค้นหา

$context 
+= getMembersOnlineStats($membersOnlineOptions);


วางต่อด้วย


	
// Get the user online today list.
	
require_once(
$sourcedir '/Subs-MembersOnlineToday.php');
	
$membersOnlineTodayOptions = array(
	
	
'sort' => 'login_time',
	
	
'reverse_sort' => true,
	
	
'period' => 'current_day',
	
	
'canview' => 'registered',
	
);
	
$context += getMembersOnlineTodayStats($membersOnlineTodayOptions);
	



/Themes/default/BoardIndex.template.php   หรือที่ธีมของตัวเองใช้
ค้นหา
// If they are logged in, but statistical information is off... show a personal message bar.


วางไว้ก่อนหน้าที่ค้นหา
	
// Users Online Today
	
echo 
'
	
	
	
<h4 class="titlebg"><span class="left"></span>
	
	
	
	
<img class="icon" src="'
$settings['images_url'], '/icons/online.gif''" alt="'$txt['online_users'], '" />''<span>'$txt['uot_users_online_today'], '</span>
	
	
	
</h4>
	
	
	
<p class="inline smalltext">'
;
	
echo
	
	
	
	
$txt['uot_total'], ': <b>'$context['num_users_online_today'], '</b>';

	
	
	
if (
$context['viewing_allowed'])
	
echo
	
	
	
	
' ('$txt['uot_visible'], ': ', ($context['num_users_online_today'] - $context['num_users_hidden_today']), ', '$txt['uot_hidden'], ': '$context['num_users_hidden_today'], ')';

	
	
	
	
// Assuming there ARE users online... each user in users_online has an id, username, name, group, href, and link.
	
	
	
	
if (!empty(
$context['users_online_today']) && $context['viewing_allowed'])
	
	
	
	
{
	
echo
	
	
	
	
	
'<br />'implode(', '$context['list_users_online_today']);

	
	
	
	
	
// Showing membergroups?
	
	
	
	
	
if (!empty(
$settings['show_group_key']) && !empty($context['membergroups']))
	
echo
	
	
	
	
	
	
'<br />[' implode(']&nbsp;&nbsp;['$context['membergroups']) . ']';
	
	
	
	
}
	
echo 
'
	
	
	
</p>'
;
	
	




3. ไปที่โฟลเดอรืม็อดที่เราแตกเอาไว้ตั้งแต่ข้อ 1
- อัพไฟล์ Subs-MembersOnlineToday.php  ขึ้นโฟลเดอร์  Sources
- อัพไฟล์ MembersOnlineToday.english.php  ขึ้นโฟลเดอร์  Themes/default/languages   หรือตามธีมที่เราใช้

4. จากนั้นก็อบปี้ไฟล์  MembersOnlineToday.english.php 
แล้วเปลี่ยนชื่อเป็น  MembersOnlineToday.thai.php   หรือ   MembersOnlineToday.thai-utf8.php
แล้วอัพขึ้น  Themes/default/languages   หรือตามธีมที่เราใช้


แค่นี้ก้น่าจะแสดงผลได้ละ

ข้อแตกต่าง
ตามวิธีเดิมของเวอร์ชันเก่านั้น เป็นการเรียกภาษาที่จะแสดงผลมาจากไฟล์  ม็อด.ไทย
แต่เวอร์ชันใหม่ จะใช้วิธีสร้างไฟล์ภาษาของตัวเองขึ้นมา แล้วเรียกเอาจากไฟล์นั้น





ช่วยด้วยครับ ทำตามแล้วยังใช้ไม่ได้

http://www.accord0307club.com/index.php

ออฟไลน์ เซียวเหล่งนึ่งฯ

  • Global Moderator
  • *
  • กระทู้: 5547
  • เห็นด้วย&ขอบคุณ: 2148
    • SMFjusthost.com
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #51 เมื่อ: 14, สิงหาคม 2012, 02:40:24 AM »
รีพลายข้างบนนี้ท่าน nakdham เขาทำได้แล้วหนะ ทำตามเขาสิ

ออฟไลน์ zelda

  • Just Staff
  • *
  • กระทู้: 474
  • เห็นด้วย&ขอบคุณ: 543
  • เพศ: ชาย
    • www.izedzine.com
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #52 เมื่อ: 14, สิงหาคม 2012, 03:06:08 AM »

ช่วยด้วยครับ ทำตามแล้วยังใช้ไม่ได้

http://www.accord0307club.com/index.php

ที่ทำไม่ได้เพราะบอร์ดคุณใช้ SMF 1.1.16 แต่วิธีการทำเค้าสอนเป็น SMF 2.0 คนละเวอร์ชั่นกัน
คุณต้องไปทำตาม instruction ของ 1.1.x
วิธีการอ่านดูในกระทู้สารบัญเรื่องการติดตั้งม็อดทั้งแบบแพคเกจและแบบแมนนวล

ออฟไลน์ เซียวเหล่งนึ่งฯ

  • Global Moderator
  • *
  • กระทู้: 5547
  • เห็นด้วย&ขอบคุณ: 2148
    • SMFjusthost.com
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #53 เมื่อ: 14, สิงหาคม 2012, 03:20:52 AM »
เหออๆ ที่แท้คนละเวอร์ชัน

ออฟไลน์ music125500

  • Just Member
  • *****
  • กระทู้: 125
  • เห็นด้วย&ขอบคุณ: 5
    • รับสอนดนตรี
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #54 เมื่อ: 12, มีนาคม 2013, 07:12:48 AM »
โอ้ว ขอบคุณครับผม  :cheesy:

freesell.in.th

  • บุคคลทั่วไป
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #55 เมื่อ: 31, พฤษภาคม 2013, 10:11:36 AM »
ของปุ้มเป็นอย่างนี้ค่ะ

ต้องติ๊กออกใช่ไหมค่ะ แล้วถ้าอยากได้ภายใน 1 วันนี้ล่ะค่ะต้องทำยังไง ต้องใส่ตัวเลขเป็น 1140 หรอค่ะ


ติ๊กถูก track daily  ทั้ง อันครับ

ออฟไลน์ benzabza

  • Ju
  • *
  • กระทู้: 7
  • เห็นด้วย&ขอบคุณ: 1
    • honda vezel
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #56 เมื่อ: 28, มกราคม 2014, 09:47:51 PM »
ผมทำตามคุณ nakdham แต่ขึ้นหน้าขาวอ่ะครับ ของผมเป็น smf 2.0.2

ออฟไลน์ เซียวเหล่งนึ่งฯ

  • Global Moderator
  • *
  • กระทู้: 5547
  • เห็นด้วย&ขอบคุณ: 2148
    • SMFjusthost.com
Re: วิธีทำให้ Users_Online_Today แสดงผล (เครซี่)
« ตอบกลับ #57 เมื่อ: 28, มกราคม 2014, 11:38:26 PM »
ม็อดตัวนี้ซัพพอร์ตถึง 2.0.5 นั่นหมายความว่า 2.0.2 สามารถลงแบบออโตแพคเกจได้
ไม่จำเป็นต้องเมนวล
http://custom.simplemachines.org/mods/index.php?action=download;mod=217;id=209606

 

Sitemap 1 2 3 4 5 6 
Back to top