:: JustUsers.net ::

:: คนทำเว็บ :: => Simple Machines Forum [SMF] => Configuration => ข้อความที่เริ่มโดย: Mr.-[CAT]- ที่ 21 กรกฎาคม 2553, 23:05:37 น.

หัวข้อ: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 21 กรกฎาคม 2553, 23:05:37 น.
เห็นในเว็บนี้แล้วอยากทำตามนะครับ
(http://img38.imageshack.us/img38/3077/31524557.gif) (http://img38.imageshack.us/i/31524557.gif/)
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: phoenix ที่ 22 กรกฎาคม 2553, 08:38:10 น.
ทำไงอะครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 22 กรกฎาคม 2553, 09:50:06 น.
รอผู้เชี่ยวชาญมาตอบอิๆ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 22 กรกฎาคม 2553, 14:32:42 น.
มันเป็นการผสมผสานกัน อย่างแรกเลยคือการใช้งานการ์มา  ระดับคะแนน + - (จะเปลี่ยนชื่อเป็น ระบบแต๊งคูล หรือแต๊งกิ้ว หรือเห็นด้วยก็แล้วแต่)
ถ้าทำแค่ระบบการืมาแต๊งธรรมดา จะไม่มีผลต่อระดับ-ตำแหน่งของสมาชิก

แต่ของจัสต์ ดัดแปลงอีกนิดหน่อย คือแทนที่จะเลื่อนระดับสมาชิกตามจำนวนโพสต์ 
เราก็เปลี่ยนเป็น เลื่อนระดับตามจำนวน+ของการ์มา (ของจัสต์จะไม่มีการลบการ์มา/เห็นด้วย&ขอบคุณ)

เครดิตของระบบนี้ทั้งหมดยกให้  zone-it.com และ  DexMore.Com  เพราะมีการพัฒนากันมาหลายต่อมาก

สรุปวิธีคร่าวๆ จากท่าน zelda





ก่อนอื่นไปเปิดใช้งานการ์มา
เปิดการืมาแบบรวม  และใส่ชื่อไปแค่นั้น อย่างอื่นไม่ต้องใส่

(http://www.chongter.com/webboard/index.php?action=dlattach;topic=7398.0;attach=2586;image)


ใช้ แต็ง การ์มา ในการเลื่อนลำดับสมาชิก




quote author=Zelda Cullen link=topic=102241.msg681939#msg681939 date=1250100627]
แนวคิดนี้ผมได้มาจากคุณ Antony บอร์ด SimpleMachines แต่ของคุณแอนโทนีทำ เป็นของเวอร์ชั่น ๒.๐ ผมเลยเอามาแก้ตัวแปรให้ใช้ได้กับเวอร์ชั่น ๑.๑.x ผมจะรีไรต์ตั้งแต่การปรับแต่งคูลเฟิร์มเลยนะครับ (PHP ๕ นะครับ ส่วนใหญ่เซิร์ฟเวอร์จะเป็นเวอร์ชั่นนี้หมดแล้ว)
๑.สร้างโฟลเดอร์ tdata อัพขึ้นไปยังไดเรคทอรีของบอร์ด ทำการ CHMOD ๗๗๗
๒.สร้างไฟล์ชื่อ thankcool.php ใส่คำสั่งต่อไปนี้

โค๊ด: [เลือก]
<?php
// ThankCool by [DomeniC]
include "SSI.php";
$tid=$_GET['tid'];
loadMemberData($context['user']['id'], false'profile');
loadMemberContext($context['user']['id']);
$thxd = array();
if(
is_readable("tdata/".$tid.".txt")){
    
$thxt file_get_contents("tdata/".$tid.".txt");
    
$thxd split(","$thxt);
}
if(
in_array($context['user']['id'], $thxd)){
    die();
}
$thxd[] = $context['user']['id'];
file_put_contents("tdata/".$tid.".txt"join(","$thxd));
$req db_query("SELECT ID_MEMBER FROM {$db_prefix}messages WHERE ID_MSG = ".intval($tid)." LIMIT 1"__FILE____LINE__);
$row mysql_fetch_assoc($req);
updateMemberData($row['ID_MEMBER'], array('karmaGood' => ' '));
echo 
$memberContext[$context['user']['id']]['link'];
?>
เสร็จแล้วอัพขึ้นไปไดเรคทอรีบอร์ด
๓.ไฟล์ Display.php หาคำสั่งนี้
โค๊ด: [เลือก]
$message['body'] = parse_bbc($message['body'], $message['smileysEnabled'], $message['ID_MSG']);ใส่คำสั่งนี้บรรทัดต่อไป
โค๊ด: [เลือก]
/* ThanlCool by [DomeniC] --> load data */
    if(is_readable("tdata/".$message['ID_MSG'].".txt")){
        $thxd = split(",", file_get_contents("tdata/".$message['ID_MSG'].".txt"));
    }else{
        $thxd = array();
    }
    $thxraw = $thxd;
    if($thxd){
        foreach($thxd as $j=>$m){
            loadMemberData($m, false, 'profile');
            loadMemberContext($m);
            $thxd[$j] = $memberContext[$m]['link'];
        }
    }
หาคำสั่งนี้
โค๊ด: [เลือก]
'new' => empty($message['isRead']),ใส่คำสั่งนี้บรรทัดต่อไป
โค๊ด: [เลือก]
'thx' => $thxd,
'thxraw' => $thxraw,
๔. ไฟล์ Display.template.php  หาคำสั่งนี้
โค๊ด: [เลือก]
// Show the post itself, finally!
echo '
</td>
</tr></table>
<hr width="100%" size="1" class="hrcolor" />
<div class="post"', $message['can_modify'] ? ' id="msg_' . $message['id'] . '"' : '', '>', $message['body'], '</div>', $message['can_modify'] ? '
แทนที่ด้วยคำสั่งนี้
โค๊ด: [เลือก]
// Show the post itself, finally!
echo '
</td>
</tr></table>
<hr width="100%" size="1" class="hrcolor" />';

/* ThankCool by [DomeniC] --> show data */
if ($context['user']['is_logged']){
if(!in_array($context['user']['id'], $message['thxraw'])){
echo ' <img src="' . $settings['images_url'] . '/coolfirm.png" alt="" border="0" id="tbutton'.$message['id'].'" onclick="getthx(',$message['id'],')" style="cursor:pointer;" /><span id="tdbutton'.$message['id'].'"></span>
<hr width="100%" size="1" class="hrcolor" />';
}}
echo ' <div class="post"', $message['can_modify'] ? ' id="msg_' . $message['id'] . '"' : '', '>', $message['body'], '</div>', $message['can_modify'] ? '
หาคำสั่งนี้
โค๊ด: [เลือก]
echo '
</td>
</tr><tr>
<td valign="bottom" class="smalltext" id="modified_', $message['id'], '">';
ใส่คำสั่งนี้ลงไปก่อนหน้าคำสั่งเมื่อกี้
โค๊ด: [เลือก]
/* ThankCool by [DomeniC] --> show who thankcool */
if($message['thx']){
echo ' <br /><span id="thxby'.$message['id'].'" style="padding-left:50px;"><a href="', $message['href'], '"><img src="' . $settings['images_url'] . '/coolby.png" alt="thxby'.$message['id'].'" border="0"/></a>'.join($message['thx'], ", ").'</span><span id="whothx'.$message['id'].'"></span>';
}else{
echo ' <br /><span id="thxby'.$message['id'].'" style="display:none;padding-left:50px;"><a href="', $message['href'], '"><img src="' . $settings['images_url'] . '/cool.png" alt="thxby'.$message['id'].'" border="0"/></a></span><span id="whothx'.$message['id'].'" style="display:none;">.</span>';
}
หาคำสั่งนี้ (ก่อนวงเล็บปิดบรรทัดสุดท้าย)
โค๊ด: [เลือก]
}
?>
- ใส่คำสั่งนี้ลงไปก่อนหน้าคำสั่งเมื่อกี้
โค๊ด: [เลือก]
    /* ThankCool by [DomeniC] --> function getthx */
echo '
<script type="text/javascript">
        function $(el) {return document.getElementById(el);}
var http; function createhttp(){if(window.ActiveXObject){http = new ActiveXObject("Microsoft.XMLHTTP");} else if (window.XMLHttpRequest){http = new XMLHttpRequest();}}
function getthx(t){createhttp();http.open("GET","thankcool.php?tid=" t, true);http.onreadystatechange = function(){if(http.readyState == 4){if(http.status == 200){addthx();}}};http.send(null);
function addthx(){gt = http.responseText;
if($("whothx" t).innerHTML != "."){
$("whothx" t).innerHTML = ", " gt;
}else{
$("whothx" t).style.display = "";
$("whothx" t).innerHTML = gt;
$("thxby" t).style.display = "";
}
$("tbutton" t).style.display = "none";
$("tdbutton" t).innerHTML = "ขอบคุณเรียบร้อย";
}
}
</script>';
เซฟไฟล์และอัพขึ้นเซิร์ฟเวอร์
๕. นำภาพชื่อ coolfirm.png และ coolby.png อัพขึ้นไปยังโฟลเดอร์ images ของธีมมาตรฐาน นี่เป็นภาพที่ผมทำไว้ ใครอยากเอาไปใช้ก็เชิญเลยครับ หรือจะหามาใส่เองก็ได้
(http://pubmed.in.th/Themes/default/images/coolfirm.png)  (http://pubmed.in.th/Themes/default/images/coolby.png)
๖. ไฟล์ Sub.php หาคำสั่งนี้
โค๊ด: [เลือก]
// Set all membergroups from most posts to least posts.
$conditions = '';
foreach ($postgroups as $id => $minPosts)
{
$conditions .= '
WHEN posts >= ' . $minPosts . (!empty($lastMin) ? ' AND posts <= ' . $lastMin : '') . ' THEN ' . $id;
$lastMin = $minPosts;
}
แทนที่ด้วยคำสั่งนี้
โค๊ด: [เลือก]
// Set all membergroups from most karma to least karma - ZELDA Modifications.
$conditions = '';
foreach ($postgroups as $id => $minKarma)
{
$conditions .= '
WHEN (karmaGood - karmaBad) >= ' . $minKarma . (!empty($lastMin) ? ' AND (karmaGood - karmaBad) <= ' . $lastMin : '') . ' THEN ' . $id;
$lastMin = $minKarma;
}
หาคำสั่งนี้
โค๊ด: [เลือก]
if ($parameter2 !== null && !in_array('posts', $parameter2))แทนที่ด้วยคำสั่งนี้
โค๊ด: [เลือก]
if ($parameter2 !== null && !in_array('karmaGood', $parameter2) && !in_array('karmBad', $parameter2))เซฟให้เรียบร้อย

๗. สร้างไฟล์ชื่อ Update.php ใส่คำสั่งนี้ลงไป
อ้างถึง
<?php
if (file_exists(dirname(__FILE__) . '/SSI.php') && !defined('SMF'))

   require_once(dirname(__FILE__) . '/SSI.php');

elseif (!defined('SMF'))

   die('<b>Error:</b> ไม่สามารถติดตั้งได้ - โปรดตรวจสอบให้แน่ใจว่าไฟล์นี้อยู่ที่เดียวกับ SMF/index.php.');

updateStats('postgroups');

?>


อัพขึ้นไปยังไดเรคทอรีของบอร์ดคุณ พิมพ์ชื่อเว็บคุณตามด้วย /Update.php (เรียกไฟล์ขึ้นมารัน) เคาะเอนเทอร์หนึ่งที จบ

๘.ไฟล์ ManageMember.thai-utf8.php หาคำสั่งนี้
โค๊ด: [เลือก]
$txt['membergroups_post'] = 'กลุ่มที่นับจำนวนของกระทู้';แทนที่ด้วย
โค๊ด: [เลือก]
$txt['membergroups_post'] = 'กลุ่มที่นับจำนวนของการ์ม่า';
หาคำสั่งนี้
โค๊ด: [เลือก]
$txt['membergroups_edit_post_group'] = 'กลุ่มนี้คือกระทู้พื้นฐาน';
$txt['membergroups_min_posts'] = 'จำนวนกระทู้ที่ต้องการ';
แทนที่ด้วยคำสั่งนี้
โค๊ด: [เลือก]
$txt['membergroups_edit_post_group'] = 'กลุ่มนี้คือการ์ม่าพื้นฐาน';
$txt['membergroups_min_posts'] = 'จำนวนการ์ม่าที่ต้องการ';

เสร็จแล้วก็ไปเปิดการ์มแบบผลรวมนะครับ ใครจะเปลี่ยนชื่อว่าความคูล จิตพิสัย คะแนนความดี ฯลฯ ก็ตามสะดวกเลยครับ

(http://upic.me/i/jf/pubmed.png)




หากใช้ข้อความภาษาไทย   ดีสเพลย์.เท็มเพลท ต้องเอนโค๊ด ยูทีเอฟ8

รูปตัวอย่าง 

(http://www.chongter.com/webboard/index.php?action=dlattach;topic=7398.0;attach=2564;image)

(http://www.chongter.com/webboard/index.php?action=dlattach;topic=7398.0;attach=2565;image)

ทำรูปใหม่ก็ได้ แล้วแต่แนวของเว็บ 
ใช้รูปกิ๊ฟ หรือ พีเอ็นจี จะตัดพื้นหลังได้
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 22 กรกฎาคม 2553, 14:39:20 น.
ตามตอบ #3   
นั่นพอสรุปได้คือ
1.การเลื่อนระดับสมาชิกตามจำนวนการ์มา+ 
2.การทำระบบแต๊งคูลให้แสดงในหน้าข้อความ
3.การทำให้คะแนนแต๊งคูลแทนที่คะแนนการ์มา


แต่ถ้าใครจะใช้การ์มาของตัวเองแบบเดิมๆ โดยทำแค่ระบบแต๊งคูลก็ทำได้  ตามนี้




เครดิต ท่าน $.pdnb  zone-it.com



ขั้นตอนการใส่
 - สร้างไฟล์เดอร์ tdata ในโฟลเดอร์บอร์ดของคุณและ cmod เป็น 777
 - สร้างไฟล์ thankcool.php แล้วใส่โค้ดนี้ลงไป
   สำหรับ PHP 4 ใส่โค้ดนี้
<?php
// ThankCool by [DomeniC]
include "SSI.php";
$tid=$_GET['tid'];
loadMemberData($context['user']['id'], false, 'profile');
loadMemberContext($context['user']['id']);
$thxd = array();
if(is_readable("tdata/".$tid.".txt")){
    $thxt = file_get_contents("tdata/".$tid.".txt");
    $thxd = split(",", $thxt);
}
if(in_array($context['user']['id'], $thxd)){
    die();
}
$thxd[] = $context['user']['id'];
file_put_contents("tdata/".$tid.".txt", join(",", $thxd));
function file_put_contents($file, $con){$fp=fopen($file, "w");fwrite($fp, $con);fclose($fp);}
echo $memberContext[$context['user']['id']]['link'];
?>
   สำหรับ PHP 5 ใส่โค้ดนี้
<?php
// ThankCool by [DomeniC]
include "SSI.php";
$tid=$_GET['tid'];
loadMemberData($context['user']['id'], false, 'profile');
loadMemberContext($context['user']['id']);
$thxd = array();
if(is_readable("tdata/".$tid.".txt")){
    $thxt = file_get_contents("tdata/".$tid.".txt");
    $thxd = split(",", $thxt);
}
if(in_array($context['user']['id'], $thxd)){
    die();
}
$thxd[] = $context['user']['id'];
file_put_contents("tdata/".$tid.".txt", join(",", $thxd));
echo $memberContext[$context['user']['id']]['link'];
?>
 - อัพโหลดไฟล์ thankcool.php ไปไว้โฟลเดอร์บอร์ดของคุณ

 - เปิดไฟล์ Sources/Display.php
 - หาโค้ดนี้
$message['body'] = parse_bbc($message['body'], $message['smileysEnabled'], $message['ID_MSG']);
 - ใส่โค้ดนี้บรรทัดต่อไป
/* ThanlCool by [DomeniC] --> load data */
    if(is_readable("tdata/".$message['ID_MSG'].".txt")){
        $thxd = split(",", file_get_contents("tdata/".$message['ID_MSG'].".txt"));
    }else{
        $thxd = array();
    }
    $thxraw = $thxd;
    if($thxd){
        foreach($thxd as $j=>$m){
            loadMemberData($m, false, 'profile');
            loadMemberContext($m);
            $thxd[$j] = $memberContext[$m]['link'];
        }
    }
 - หาโค้ดนี้
'new' => empty($message['isRead']),
 - ใส่โค้ดนี้บรรทัดต่อไป
'thx' => $thxd,
'thxraw' => $thxraw,


 - เปิดไฟล์ Display.template.php
 - หาโค้ดนี้
// Show the post itself, finally!
echo '
</td>
</tr></table>
<hr width="100%" size="1" class="hrcolor" />
<div class="post"', $message['can_modify'] ? ' id="msg_' . $message['id'] . '"' : '', '>', $message['body'], '</div>', $message['can_modify'] ? '
 - ใส่โค้ดนี้ทับลงไป
// Show the post itself, finally!
echo '
</td>
</tr></table>
<hr width="100%" size="1" class="hrcolor" />';

/* ThankCool by [DomeniC] --> show data
ถ้าให้ จขกท คูลตัวเองได้ บรรทัดแรกใส่แค่ if ($context['user']['is_logged']){ */
if ($context['user']['id'] != $message['member']['id'] && $context['user']['is_logged']){
if(!in_array($context['user']['id'], $message['thxraw'])){

if(!in_array($context['user']['id'], $message['thxraw'])){
echo ' <img src="' . $settings['images_url'] . '/thx.png" alt="" border="0" id="tbutton'.$message['id'].'" onclick="getthx(',$message['id'],')" style="cursor:pointer;" /><span id="tdbutton'.$message['id'].'"></span>
<hr width="100%" size="1" class="hrcolor" />';
}}
echo ' <div class="post"', $message['can_modify'] ? ' id="msg_' . $message['id'] . '"' : '', '>', $message['body'], '</div>', $message['can_modify'] ? '
 - หาโค้ดนี้
echo '
</td>
</tr><tr>
<td valign="bottom" class="smalltext" id="modified_', $message['id'], '">';
 - ใส่โค้ดนี้ลงไปก่อนหน้าโค้ดเมื่อกี๊
/* ThankCool by [DomeniC] --> show who thankcool */
if($message['thx']){
echo ' <br /><span id="thxby'.$message['id'].'" style="padding-left:50px;"><a href="', $message['href'], '"><img src="' . $settings['images_url'] . '/thxby.png" alt="thxby'.$message['id'].'" border="0"/></a>'.join($message['thx'], ", ").'</span><span id="whothx'.$message['id'].'"></span>';
}else{
echo ' <br /><span id="thxby'.$message['id'].'" style="display:none;padding-left:50px;"><a href="', $message['href'], '"><img src="' . $settings['images_url'] . '/thxby.png" alt="thxby'.$message['id'].'" border="0"/></a></span><span id="whothx'.$message['id'].'" style="display:none;">.</span>';
}
 - หาโค้ด (อยู่บรรทัดสุดท้าย)
}
?>
 - ใส่โค้ดนี้ลงไปก่อนหน้าโค้่ดเมื่อกี๊
โค๊ด: [เลือก]
    /* ThankCool by [DomeniC] --> function getthx */
echo '
<script type="text/javascript">
        function $(el) {return document.getElementById(el);}
var http; function createhttp(){if(window.ActiveXObject){http = new ActiveXObject("Microsoft.XMLHTTP");} else if (window.XMLHttpRequest){http = new XMLHttpRequest();}}
function getthx(t){createhttp();http.open("GET","thankcool.php?tid=" t, true);http.onreadystatechange = function(){if(http.readyState == 4){if(http.status == 200){addthx();}}};http.send(null);
function addthx(){gt = http.responseText;
if($("whothx" t).innerHTML != "."){
$("whothx" t).innerHTML = ", " gt;
}else{
$("whothx" t).style.display = "";
$("whothx" t).innerHTML = gt;
$("thxby" t).style.display = "";
}
$("tbutton" t).style.display = "none";
$("tdbutton" t).innerHTML = "ขอบคุณเรียบร้อย";
}
}
</script>';

ทำการเซฟไฟล์ทั้งหมดที่แก้ไขไปให้เรียบร้อย

คราวนี้เป็นปุ่ม ThankCool และ ThankCool by

([url]http://www.uppic.net/ic/53thx.png[/url])
นำไปไว้ในโฟลเดอร์รูปของธีมที่คุณใช้ ชื่อไฟล์ thx.png

([url]http://www.uppic.net/it/thxby.png[/url])
นำไปไว้ในโฟลเดอร์รูปของธีมที่คุณใช้ ชื่อไฟล์ thxby.png

เป็นอันว่าเสร็จเรียบร้อย

ปล.หากมีปัญหาตรงไหน อย่างไร ตอบไว้ในกระทู้นี้นะครับ

Edit : เพิ่มเติมครับ
ลืมบอกไปครับว่าในส่วนของจาวาสคริปนั้นจะเห็นว่ามีเครื่องหมาย $ อยู่นะครับ
ถ้าไม่มีฟังค์ชั่น $ ก็จะใช้งานไม่ได้ครับ ลองหาวิธีเองนะครับ
:P


หากใช้ข้อความภาษาไทย   ดีสเพลย์.เท็มเพลท ต้องเอนโค๊ด ยูทีเอฟ8




หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 22 กรกฎาคม 2553, 20:51:55 น.
สุดท้ายก็มีเทพมาช่วยครับ ขอบใจมากครับ :yaahoo:
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 22 กรกฎาคม 2553, 23:18:56 น.
ผมทำในLocalhost ไม่ปรากฎอะไรเลยครับ หรือว่าต้องทำใน Host จริงๆ ครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 23 กรกฎาคม 2553, 01:28:31 น.
วิธีที่นำมานี้ ทำกับ 1.1.11  และเราก็ใช้วิธีนี้แหละกับจัสต์ 
ผ่าตัดสด แก้ไฟล์อัพทับบนโฮสต์จริงเลย

ท่านลองไล่รายละเอียดดูอีกที
แบ็คอัพไฟล์ด้วยเน้อ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 23 กรกฎาคม 2553, 08:26:38 น.
ครับ หลายรอบเหมือนกัน  แต่ตอนนี้จะลองทำใน Host จริงๆ อาจจะเวิรค์กว่า เพราะ CMOD ได้ด้วย ใน Localhost อาจมีปัญหาหลายอย่าง

งานเข้าอีกแล้ว เซฟไฟล์ด้วย EditPlus ไม่ผ่านอีกกรรมเวร
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 25 กรกฎาคม 2553, 23:19:37 น.
ทำใน Host จริงก็ไม่ประสบความสำเร็จอิๆ :yaahoo:
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 26 กรกฎาคม 2553, 23:29:22 น.
 :yaahoo: ทำได้แล้วจ้า
จากนี้ครับ http://www.zone-it.com/40887 แต่ผมขอเพิ่มเติมนิดหน่อยจากคำอธิบายในกระทู้นิดหน่อยคือว่า Folder "tdata" นั้นให้เอาไว้ใน path อย่างนี้ครับ xxxx/forum/tdata และก็ไฟล์ thankcool.php เหมือนกัน xxx/forum/thankcool.php  ทีแรกผมเอาไว้ใน folder ของธีมทั้งคู่เลย ไม่รุ้นะผมก็มั่วเหมือนกัน ลองทำดูก็แล้วกัน 

+++ แต่จะให้ทำให้มันสัมผัสกับระบบการ์ม่า ต้องถามผู้เชี่ยวชาญอีกแล้ว
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: inthai ที่ 30 กรกฎาคม 2553, 13:17:48 น.
รบกวนนิดหนึ่งนะครับ

ถ้าอยากทำแค่ระบบ agree อย่างเดียว แบบนี้ต้องแก้เฉพาะส่วนไหนบ้างครับ
แล้วโชว์เป็นชื่อเฉพาะใต้โพสนั้นๆ ไม่เอามารวมกับคะแนน Thank

ขอบคุณล่วงหน้ามากครับ ถ้าถามผิดพลาดยังไงขออภัยด้วยครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 30 กรกฎาคม 2553, 19:00:18 น.

ตามทำนี้นะครับ
http://www.zone-it.com/40887

หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: inthai ที่ 04 สิงหาคม 2553, 06:05:10 น.
ผมทำเฉพาะ แตงคูลอย่างเดียว

ใช้งานได้คับ แต่พอกดปุ่มไปแล้ว
ขึ้น ตรงที่แสดง ชื่อคนกดด้านล่าง เนื้อหาส่วนอื่นของบอร์ดปกติเหมือนเดิม ไม่เสียหาย

โค๊ด: [เลือก]
Warning: strpos() [function.strpos]: Empty delimiter in C:\Inetpub\vhosts\camfroginthai.com\subdomains\webboard\httpdocs\Sources\Subs.php(1674) : runtime-created function on line 2

Warning: strpos() [function.strpos]: Empty delimiter in C:\Inetpub\vhosts\camfroginthai.com\subdomains\webboard\httpdocs\Sources\Subs.php(1674) : runtime-created function on line 2

แต่พอกด รีเฟรสหน้าจอ อีกครั้ง ก็แสดงชื่อคนกดคนนั้นปกติครับ

ขอบคุณล่วงหน้าครับ ถ้าผิดพลาดยังไงขออภัยด้วยครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 04 สิงหาคม 2553, 17:45:21 น.
รบกวนนิดหนึ่งนะครับ

ถ้าอยากทำแค่ระบบ agree อย่างเดียว แบบนี้ต้องแก้เฉพาะส่วนไหนบ้างครับ
แล้วโชว์เป็นชื่อเฉพาะใต้โพสนั้นๆ ไม่เอามารวมกับคะแนน Thank

ขอบคุณล่วงหน้ามากครับ ถ้าถามผิดพลาดยังไงขออภัยด้วยครับ

ให้ทำตาม ตอบ #4
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: inthai ที่ 04 สิงหาคม 2553, 17:55:35 น.
ขอบคุณมากครับ ที่ช่วยตอบให้ ใช้งานได้ แต่ติดปัญหาเรื่องเดียว ตามคอมเม้นอันก่อน ที่เวลากด ไปแล้วมันจะขึ้น เตือน

โค๊ด: [เลือก]
Warning: strpos() [function.strpos]: Empty delimiter in C:\Inetpub\vhosts\camfroginthai.com\subdomains\webboard\httpdocs\Sources\Subs.php(1674) : runtime-created function on line 2

Warning: strpos() [function.strpos]: Empty delimiter in C:\Inetpub\vhosts\camfroginthai.com\subdomains\webboard\httpdocs\Sources\Subs.php(1674) : runtime-created function on line 2

แบบนี้ ตรงจุด ที่ แสดงชื่อคนกด แต่พอกดรีเฟรสหน้าจอ กลับมาก็แสดงชื่อปกติ ข้อความเตือนหายไป

ผมลองถามเพื่อนๆ เค้าบอกปกติ ผมก็งง ว่าทำไมผมเป็นคนเดียว

สะดวกยังไง ช่วยดูให้หน่อย

http://webboard.camfroginthai.com

ไอดี  test1234  พาส123456

ขอบคุณล่วงหน้ามากครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: inthai ที่ 04 สิงหาคม 2553, 21:36:37 น.
เป็นที่ไอดีadmin ผมเองครับ ไอดีคนอื่นใช้งานได้ปกติผมลองเทสสมัครใหม่ก็ใช้งานได้ปกติ แต่ไอดีadmin ผมเองขึ้น  เตือนแบบนี้ งิๆไม่รู้เป็นปัญหาที่ส่วนไหน
ภาษาที่ใช้ในไอดี ก็เซตตรงกันหมด ผมลองแอดไอดีอื่นเป็นadmin ก็ไม่มีปัญหา ท่านไหนพอทราบ ขอความกรุณา ขอบคุณล่วงหน้าครับ
:crying:
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: july8329 ที่ 20 สิงหาคม 2553, 01:09:37 น.
ตอนนี้ผมลองทำแบบไม่อิงกามาร์แต่ว่าผมสามารถ thank ตัวเองได้อะครับ ต้องทำยังไงถึงจะ thank ตัวเองไม่ได้เหรอครับ แล้วผมติดตั้งบอร์ดแบบ tis-602 ต้อง encode ด้วยวิธีไหนให้เป็น utf-8 เหรอครับ ยังไม่กล้าทำกลัวบอร์ดพังน่ะครับ รบกวนด้วยนะครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 20 สิงหาคม 2553, 11:47:41 น.
ตอนนี้ผมลองทำแบบไม่อิงกามาร์แต่ว่าผมสามารถ thank ตัวเองได้อะครับ ต้องทำยังไงถึงจะ thank ตัวเองไม่ได้เหรอครับ แล้วผมติดตั้งบอร์ดแบบ tis-602 ต้อง encode ด้วยวิธีไหนให้เป็น utf-8 เหรอครับ ยังไม่กล้าทำกลัวบอร์ดพังน่ะครับ รบกวนด้วยนะครับ

1. ไม่ให้แต๊งตัวเอง
Display.template.php
   if ($context['user']['is_logged']){
แก้เป็น
if ($context['user']['is_logged'] && $context['user']['id'] != $message['member']['id']){


2.ภาษาไทยเป็นสี่เหลี่ยม  เอนโค๊ด Display.template.php เป็นยูทีเอฟ


เครดิตวิธีแก้ปัญหาจากโซนไอที
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: pago ที่ 09 ตุลาคม 2553, 00:54:20 น.
ช่วยด้วยครับ หาไฟล์ Display.template.php  ไม่เจอครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 09 ตุลาคม 2553, 01:13:12 น.
ในธีมที่ใช้ไม่มีให้ไปแก้ที่ดีฟอลด์
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Mr.-[CAT]- ที่ 09 ตุลาคม 2553, 07:43:18 น.
ช่วยด้วยครับ หาไฟล์ Display.template.php  ไม่เจอครับ

ที่ PM ไปหาผมนะ ต้องขออภัยด้วยนะ ช่วงนี้ผมหันไปลองเล่น Phpwind อยู่ ไม่กล้าตอบ กลัวจะผิด ขอให้ท่านอ่านในบอร์ดนี้แหละเดี๋ยวเป็นเอง ผมก็มั่วอยู่ตั้งนานกว่าจะเป็น
แต่ทุกครั้งที่ผมทำ ผมจะยึดธีม Default เป็นหลักนะ ธีมอื่นมันจะงง

ปล.รักทุกคน :smitten-1:
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 09 ตุลาคม 2553, 12:32:17 น.
ได้พีเอ็มเหมือนกันเหรอ 
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: phoenix ที่ 10 ตุลาคม 2553, 11:45:38 น.
ขอบคุณครับว่าแต่มองภาพไม่เห็นอะ

เห็นภาพแล้วครับ

แต่ทำไมกดไม่ได้อะ

หรือว่าระบบจดจำไอพี
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: kissa ที่ 26 ธันวาคม 2553, 22:16:26 น.
คือว่ามีวิธีที่จะจำกัดไหมครับว่าให้ thank ได้ไม่เกินคนละกี่ครั้งต่อวัน

ถ้าเป็นไปได้

ผมอยากให้แบบว่าแต่ละคนจะมีแต้มไว้แต๊งค์อ่าครับสมัครใหม่มีคนละ 100 แต้ม แต๊งเสร็จแต้มก็จะหายไป แล้วแต้มจะเพิ่มขึ้นทุกวันที่ล็อกอินอ่าครับ

แต่ถ้าเป็นไปไม่ได้ก็เอาแค่แบบ ตัวสีน้ำเงินข้างบนก็พอ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: UnclEo ที่ 27 ธันวาคม 2553, 03:50:50 น.
ทำไม่ได้ครับ เพราะ thx ตัวนี้ข้อมูลเป็น txt ถ้าจะทำ คุณต้องแปลง txt เก็บลง db ก่อน แล้วถึงจะคิวรี่ข้อมูลมาควบคุม แบบนี้

โค๊ด: [เลือก]
$request = db_query("
SELECT mem.thankPerDay, mem.ID_MEMBER
FROM {$db_prefix}members AS mem
WHERE mem.ID_MEMBER = $ID_MEMBER", __FILE__, __LINE__);
$results = mysql_fetch_row($request);
$thper_day = $results[0];
mysql_free_result($request);


$time_24hours_ago = time() - 86400;
$request = db_query("
SELECT COUNT(m.ID_MSG) AS thankCount
FROM {$db_prefix}messages AS m
WHERE m.ID_MEMBER = $ID_MEMBER
AND m.thankTime > '$time_24hours_ago.'", __FILE__, __LINE__);
list ($thankCount) = mysql_fetch_row($request);
mysql_free_result($request);


if (!empty($thankCount) && $thankCount >= $thper_day)
{
$request = db_query("
SELECT ID_MEMBER
FROM {$db_prefix}moderators
WHERE ID_MEMBER = $ID_MEMBER", __FILE__, __LINE__);
if (mysql_num_rows($request) == 0)
fatal_error(sprintf($txt['thank_many_per_day'], $thper_day));
mysql_free_result($request);
}
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: kissa ที่ 27 ธันวาคม 2553, 06:30:40 น.
อ่อครับถ้าทำไม่ได้ก็ไม่เป็นไรครับ

ขอบคุณมาก ๆ ที่มาตอบให้
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: kissa ที่ 28 ธันวาคม 2553, 23:05:25 น.
คือผมทำแล้วการ์ม่าไม่หายครับแต่รูปขึ้นอยู่กดก็ไม่มีอะไรเกิดขึ้น
(http://image.ohozaa.com/i/4e2/capture.png) (http://image.ohozaa.com/show.php?id=12344b090de267f735eea77f4de0f699)
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 29 ธันวาคม 2553, 00:31:24 น.
ขอยูอาแอลเว้บของท่านด้วย
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: kissa ที่ 29 ธันวาคม 2553, 06:58:54 น.
ตามพีเอ็มครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวคนสวย ที่ 29 ธันวาคม 2553, 08:32:27 น.
ทีนี้ต้องดูว่าสำหรับธีมที่เราใช้ เราแก้ได้ถูกไฟล์ไหม
ทำมาได้ขนาดนี้ก็คงใกล้เสร็จแล้วผิดที่ตอนแก้ไฟล์ธีมนี่แหละ 

ลองทบทวนขั้นตอนอีกที

ค่ำๆเข้ามาดูอีกที
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: phoenix ที่ 19 กุมภาพันธ์ 2554, 17:02:19 น.
ทำได้แล้วครับ ขอยืม ภาพ thankcool and agree จากเว็บด้วยนะครับ


ขอบคุณมากครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: คนธรรมดา ที่ 19 กุมภาพันธ์ 2554, 17:45:06 น.
ขอยืม ภาพ thankcool and agree จากเว็บด้วยนะครับ

search จาก google Image (ไทย) ว่า thxby มีรูปนี้ติดอันดับสามด้วยล่ะ
 :rolleyes:
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: phoenix ที่ 19 กุมภาพันธ์ 2554, 18:01:59 น.
ขอยืม ภาพ thankcool and agree จากเว็บด้วยนะครับ

search จาก google Image (ไทย) ว่า thxby มีรูปนี้ติดอันดับสามด้วยล่ะ
 :rolleyes:

ลองเอาไปใช้ หลังจากที่กด แล้วเป็นภาษาอะไรไม่รู้ ลองเข้าไปดูไฟล์

Display.template.php

อีกทีเป็น ภาษาไทยเลยลองเปลี่ยน เป็น ภาษาอังกฤษ ว่า thankyou ทีนี้โอเคละครับ

ขอบคุณครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 19 กุมภาพันธ์ 2554, 18:10:15 น.
เพราะดีสเพลเทมเพลท ไม่ได้เอนโค๊ดเป็นยูทีเอฟ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เด๊กนนท์ ที่ 01 มิถุนายน 2554, 14:56:24 น.
ทำไปแล้วไม่เป็นดังหวัง ขึ้น error ตั้งแต่หน้า ดิสเพล เทมเพลต เลย
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: iamday ที่ 19 กรกฎาคม 2554, 15:14:43 น.
เยอะแยะจัง..ลายตาหลายๆ
อยากได้แค่กดแล้วมีชื่อคนกดโชว์ข้างล่าง ไม่ต้องไปเลื่อนระดับสมาชิกก็ได้ครับพี่ท่าน ^ ^"
ทำไงดีครับ?
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: construction ที่ 10 พฤศจิกายน 2554, 20:54:13 น.
php 4 และ 5  ดูตรงไหนครับ  ผมนึกไม่ออก  :hitwall: :hitwall:
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: Tcomputer ที่ 11 พฤศจิกายน 2554, 05:41:53 น.
ดูจากสเปคที่ท่านเช่าโฮสต์ครับ หรือไม่ก็ดูใน DirectAdmin ตรงส่วน Server Information  หรือดูใน phpmyadmin ก็ได้ครับผม
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: ไก่ขี้เมา® ที่ 11 พฤศจิกายน 2554, 08:33:30 น.
php 4 และ 5  ดูตรงไหนครับ  ผมนึกไม่ออก  :hitwall: :hitwall:

สร้างไฟล์เล็กๆ ไฟล์หนึ่งเอาไปอัพไว้ในเว็บท่านในที่ใดที่หนึ่ง

filename: phpinfo.php
โค๊ด: [เลือก]
<?php
echo phpinfo();
?>


เสร็จแล้วก็รันไฟล์ จากนั้นจะเห็นรายละเอียดของเว็บฯ โดยไม่ต้องถามใคร

ป.ลิง ถ้าเว็บไม่รองรับ php ก็ใช้งานไม่ได้ (แต่คงไม่มีหรอกเนอะ...)
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: construction ที่ 11 พฤศจิกายน 2554, 19:09:26 น.
เจอปัญหาเลยครับ  www.lifecivil.com (http://www.lifecivil.com)

(http://www.picza.net/img.php?p=vPlvIvlIIx) (http://www.picza.net/show.php?id=vPlvIvlIIx)
Thanks:   ฝากรูป (http://www.picza.net)
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: ไก่ขี้เมา® ที่ 12 พฤศจิกายน 2554, 08:08:54 น.
อ้างถึง
syntax error, unexpected


เปิดแล้วลืมปิด

ตัวอย่าง code สั้นๆ

(http://img208.imageshack.us/img208/7384/34276834.png)

ก็จะได้ error
(http://img23.imageshack.us/img23/1380/55427640.png)

error ที่ line 7 แสดงว่าลืมปิด } ก่อนบรรทัด 7 ก็ลองไล่ดูว่าลืมตรงไหน

ถ้า code เยอะๆ ก็ไล่กันตาลาย  :razz:
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: construction ที่ 13 ธันวาคม 2554, 07:55:45 น.
ผมกด แต็งแล้ว ไม่มีอะไรเกิดขึ้นเลยครับ   http://www.lifecivil.com/index.php (http://www.lifecivil.com/index.php)


(http://www.picza.net/img.php?p=vPlPOPZvEx) (http://www.picza.net/show.php?id=vPlPOPZvEx)
Thanks:   ฝากรูป (http://www.picza.net)
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 13 ธันวาคม 2554, 15:55:51 น.
ลองกลับไปทบทวนการแก้ไฟล์ Display.template.php
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: construction ที่ 15 ธันวาคม 2554, 08:18:07 น.
ลองกลับไปทบทวนการแก้ไฟล์ Display.template.php


ผมเข้าไปตรวจดูแล้ว ก็เหมือนขั้นตอนทุกอย่างนะครับ   Download คลิกที่นี่ (http://file2.uploadfile.biz/i/IDIMMEIIENDWWN)


แล้วมีเรื่องผิดปกติอีกข้อว่า   ของผมแต็งของระทู้ของตัวเองได้ด้วย
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 15 ธันวาคม 2554, 15:00:39 น.
1. โฟลเดอร์ tdata  ทำ 777 รึยัง
2. ไม่ให้แต๊งตัวเอง
http://www.justusers.net/forum/index.php?topic=5591.msg23146#msg23146 (http://www.justusers.net/forum/index.php?topic=5591.msg23146#msg23146)
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: บ้าสามสลึง ที่ 17 ธันวาคม 2554, 07:33:16 น.
สวัสดีครับ คุณเซียวฯ

ขอรบกวนปรึกษาเรื่อง thankcool (http://www.justusers.net/forum/index.php?topic=5591.0) นิดนึงครับ  ผมทดลองทำมา 2 วันแล้ว คิดว่าทำตามขั้นตอนทุกอย่างไม่มีผิด  ผลก็คือ  กดแล้วนิ่ง ไม่มีอะไรเกิดขึ้น  ไม่ทราบว่าเกิดจากสาเหตุอะไร

url เว็บครับ
http://www.kasetporpeang.com/forums/index.php (http://www.kasetporpeang.com/forums/index.php)


ภาพประกอบครับ
(http://i1182.photobucket.com/albums/x449/addmin2008/thankcool.jpg)


ขอบคุณสำหรับคำตอบครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 18 ธันวาคม 2554, 13:01:24 น.
ถ้าทำถูกหมดแล้ว แต่ดันกดไม่ลง ไม่มีไรเกิดขึ้น
ลองเปลี่ยนไปใช้ตัวนี้ดู

http://www.zone-it.com/stocks/data/83/83290.html (http://www.zone-it.com/stocks/data/83/83290.html)
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: feelgood ที่ 23 ธันวาคม 2554, 04:03:45 น.
แก้มา 2 รอบแล้ว พอกด thank มี error ขึ้นมา ไฟล์ sub.php บรรทัดที่ 631 ไม่รู้เป็นไร นั่งงมมาทั้งคืน

พอรีเฟรสถ้าถึงหาย ปุ่ม thankby ขึ้นแต่ว่า คะแนนการ์ม่าไม่เพิ่ม งงมา ช่วยทีครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: บ้าสามสลึง ที่ 23 ธันวาคม 2554, 07:15:34 น.
ถ้าทำถูกหมดแล้ว แต่ดันกดไม่ลง ไม่มีไรเกิดขึ้น
ลองเปลี่ยนไปใช้ตัวนี้ดู

[url]http://www.zone-it.com/stocks/data/83/83290.html[/url] ([url]http://www.zone-it.com/stocks/data/83/83290.html[/url])


ขอบคุณครับ   ใช้ได้แล้วครับ  thankcool v2 ใ้ช้ง่ายมาก...  :smitten-1:

เพื่อนสมาชิกคนไหนทำแล้วไม่ได้ผล ลองใช้ v2 ดูนะครับ 
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: kon accord99 ที่ 01 กันยายน 2555, 22:32:06 น.
ตามตอบ #3   
นั่นพอสรุปได้คือ
1.การเลื่อนระดับสมาชิกตามจำนวนการ์มา+ 
2.การทำระบบแต๊งคูลให้แสดงในหน้าข้อความ
3.การทำให้คะแนนแต๊งคูลแทนที่คะแนนการ์มา


แต่ถ้าใครจะใช้การ์มาของตัวเองแบบเดิมๆ โดยทำแค่ระบบแต๊งคูลก็ทำได้  ตามนี้




เครดิต ท่าน $.pdnb  zone-it.com



ขั้นตอนการใส่
 - สร้างไฟล์เดอร์ tdata ในโฟลเดอร์บอร์ดของคุณและ cmod เป็น 777
 - สร้างไฟล์ thankcool.php แล้วใส่โค้ดนี้ลงไป
   สำหรับ PHP 4 ใส่โค้ดนี้
<?php
// ThankCool by [DomeniC]
include "SSI.php";
$tid=$_GET['tid'];
loadMemberData($context['user']['id'], false, 'profile');
loadMemberContext($context['user']['id']);
$thxd = array();
if(is_readable("tdata/".$tid.".txt")){
    $thxt = file_get_contents("tdata/".$tid.".txt");
    $thxd = split(",", $thxt);
}
if(in_array($context['user']['id'], $thxd)){
    die();
}
$thxd[] = $context['user']['id'];
file_put_contents("tdata/".$tid.".txt", join(",", $thxd));
function file_put_contents($file, $con){$fp=fopen($file, "w");fwrite($fp, $con);fclose($fp);}
echo $memberContext[$context['user']['id']]['link'];
?>
   สำหรับ PHP 5 ใส่โค้ดนี้
<?php
// ThankCool by [DomeniC]
include "SSI.php";
$tid=$_GET['tid'];
loadMemberData($context['user']['id'], false, 'profile');
loadMemberContext($context['user']['id']);
$thxd = array();
if(is_readable("tdata/".$tid.".txt")){
    $thxt = file_get_contents("tdata/".$tid.".txt");
    $thxd = split(",", $thxt);
}
if(in_array($context['user']['id'], $thxd)){
    die();
}
$thxd[] = $context['user']['id'];
file_put_contents("tdata/".$tid.".txt", join(",", $thxd));
echo $memberContext[$context['user']['id']]['link'];
?>
 - อัพโหลดไฟล์ thankcool.php ไปไว้โฟลเดอร์บอร์ดของคุณ

 - เปิดไฟล์ Sources/Display.php
 - หาโค้ดนี้
$message['body'] = parse_bbc($message['body'], $message['smileysEnabled'], $message['ID_MSG']);
 - ใส่โค้ดนี้บรรทัดต่อไป
/* ThanlCool by [DomeniC] --> load data */
    if(is_readable("tdata/".$message['ID_MSG'].".txt")){
        $thxd = split(",", file_get_contents("tdata/".$message['ID_MSG'].".txt"));
    }else{
        $thxd = array();
    }
    $thxraw = $thxd;
    if($thxd){
        foreach($thxd as $j=>$m){
            loadMemberData($m, false, 'profile');
            loadMemberContext($m);
            $thxd[$j] = $memberContext[$m]['link'];
        }
    }
 - หาโค้ดนี้
'new' => empty($message['isRead']),
 - ใส่โค้ดนี้บรรทัดต่อไป
'thx' => $thxd,
'thxraw' => $thxraw,


 - เปิดไฟล์ Display.template.php
 - หาโค้ดนี้
// Show the post itself, finally!
echo '
</td>
</tr></table>
<hr width="100%" size="1" class="hrcolor" />
<div class="post"', $message['can_modify'] ? ' id="msg_' . $message['id'] . '"' : '', '>', $message['body'], '</div>', $message['can_modify'] ? '
 - ใส่โค้ดนี้ทับลงไป
// Show the post itself, finally!
echo '
</td>
</tr></table>
<hr width="100%" size="1" class="hrcolor" />';

/* ThankCool by [DomeniC] --> show data
ถ้าให้ จขกท คูลตัวเองได้ บรรทัดแรกใส่แค่ if ($context['user']['is_logged']){ */
if ($context['user']['id'] != $message['member']['id'] && $context['user']['is_logged']){
if(!in_array($context['user']['id'], $message['thxraw'])){

if(!in_array($context['user']['id'], $message['thxraw'])){
echo ' <img src="' . $settings['images_url'] . '/thx.png" alt="" border="0" id="tbutton'.$message['id'].'" onclick="getthx(',$message['id'],')" style="cursor:pointer;" /><span id="tdbutton'.$message['id'].'"></span>
<hr width="100%" size="1" class="hrcolor" />';
}}
echo ' <div class="post"', $message['can_modify'] ? ' id="msg_' . $message['id'] . '"' : '', '>', $message['body'], '</div>', $message['can_modify'] ? '
 - หาโค้ดนี้
echo '
</td>
</tr><tr>
<td valign="bottom" class="smalltext" id="modified_', $message['id'], '">';
 - ใส่โค้ดนี้ลงไปก่อนหน้าโค้ดเมื่อกี๊
/* ThankCool by [DomeniC] --> show who thankcool */
if($message['thx']){
echo ' <br /><span id="thxby'.$message['id'].'" style="padding-left:50px;"><a href="', $message['href'], '"><img src="' . $settings['images_url'] . '/thxby.png" alt="thxby'.$message['id'].'" border="0"/></a>'.join($message['thx'], ", ").'</span><span id="whothx'.$message['id'].'"></span>';
}else{
echo ' <br /><span id="thxby'.$message['id'].'" style="display:none;padding-left:50px;"><a href="', $message['href'], '"><img src="' . $settings['images_url'] . '/thxby.png" alt="thxby'.$message['id'].'" border="0"/></a></span><span id="whothx'.$message['id'].'" style="display:none;">.</span>';
}
 - หาโค้ด (อยู่บรรทัดสุดท้าย)
}
?>
 - ใส่โค้ดนี้ลงไปก่อนหน้าโค้่ดเมื่อกี๊
โค๊ด: [เลือก]
    /* ThankCool by [DomeniC] --> function getthx */
echo '
<script type="text/javascript">
        function $(el) {return document.getElementById(el);}
var http; function createhttp(){if(window.ActiveXObject){http = new ActiveXObject("Microsoft.XMLHTTP");} else if (window.XMLHttpRequest){http = new XMLHttpRequest();}}
function getthx(t){createhttp();http.open("GET","thankcool.php?tid=" t, true);http.onreadystatechange = function(){if(http.readyState == 4){if(http.status == 200){addthx();}}};http.send(null);
function addthx(){gt = http.responseText;
if($("whothx" t).innerHTML != "."){
$("whothx" t).innerHTML = ", " gt;
}else{
$("whothx" t).style.display = "";
$("whothx" t).innerHTML = gt;
$("thxby" t).style.display = "";
}
$("tbutton" t).style.display = "none";
$("tdbutton" t).innerHTML = "ขอบคุณเรียบร้อย";
}
}
</script>';

ทำการเซฟไฟล์ทั้งหมดที่แก้ไขไปให้เรียบร้อย

คราวนี้เป็นปุ่ม ThankCool และ ThankCool by

([url]http://www.uppic.net/ic/53thx.png[/url])
นำไปไว้ในโฟลเดอร์รูปของธีมที่คุณใช้ ชื่อไฟล์ thx.png

([url]http://www.uppic.net/it/thxby.png[/url])
นำไปไว้ในโฟลเดอร์รูปของธีมที่คุณใช้ ชื่อไฟล์ thxby.png

เป็นอันว่าเสร็จเรียบร้อย

ปล.หากมีปัญหาตรงไหน อย่างไร ตอบไว้ในกระทู้นี้นะครับ

Edit : เพิ่มเติมครับ
ลืมบอกไปครับว่าในส่วนของจาวาสคริปนั้นจะเห็นว่ามีเครื่องหมาย $ อยู่นะครับ
ถ้าไม่มีฟังค์ชั่น $ ก็จะใช้งานไม่ได้ครับ ลองหาวิธีเองนะครับ
:P


หากใช้ข้อความภาษาไทย   ดีสเพลย์.เท็มเพลท ต้องเอนโค๊ด ยูทีเอฟ8







SMF 1.1.16 ใช้วิธีนี้ได้ใช่ไหมครับ
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 03 กันยายน 2555, 00:17:06 น.
1.1 ได้ทุกตัว
หัวข้อ: Re: อยากทำ agree&thank
เริ่มหัวข้อโดย: kon accord99 ที่ 04 กันยายน 2555, 00:21:56 น.
1.1 ได้ทุกตัว


ทำได้แล้วครับ

http://www.zone-it.com/b246/40887 (http://www.zone-it.com/b246/40887)