25 พฤษภาคม 2555, 00:55:51
ยินดีต้อนรับผู้เยี่ยมชม
  • noavata
  • ยินดีต้อนรับคุณ, ผู้เยี่ยมชม กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน
    เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น
Page Rank

ทำเว็บไซต์ | แต่งบอร์ด | ออกแบบ | SMF | Joomla | Drupal | WordPress | JQuery | CMS | ECommerce | Tel. +668-08577477

ส่งหัวข้อนี้พิมพ์ หน้า: 1 
icon message ผู้เขียน หัวข้อ: การนำกระทู้ล่าสุดไปแสดงหน้าเว็บ โดยการเลือกให้แสดงเฉพาะบอร์ด  (อ่าน 1882 ครั้ง)
0 สมาชิก และ 1 ผู้เยี่ยมชม กำลังดูหัวข้อนี้
*
*


!Personal

Germany   ชาย ผู้เริ่มต้นกระทู้นี้ ออฟไลน์544566157 DexMore DexMore DexMore
เว็บไซต์
  • ชื่อ: Select board Show topics on home
  • ผู้เขียน: UnclEo
  • นำเสนอโดย: DexMoreGroup
  • ประเภท: New Feature
  • รองรับ: SMF 1.1.xx
  • ปรับปรุงล่าสุด: 18 มิถุนายน 2553

รายละเอียด
      สำหรับท่านที่ต้องการนำกระทู้ล่าสุดจากบอร์ด SMF ไปแสดงในหน้าที่สร้างขึ้นเอง และการนำแสดงนั้นต้องเลือกเฉพาะบอร์ดไปแสดงบทความนี้สามารถช่วยท่านได้ โดยมีให้เลือก 2 แบบ ขอให้ท่านนำไปทดลองใช้ดูว่าชอบแบบใหนก็ใช้แบบนั้น

วิธีที่ 1
เลือกให้แสดงเฉพาะบอร์ด หลาย ๆ บอร์ด

แก้ไขไฟล์:

file boarddir/SSI.php
ค้นหา -->>
โค๊ด: [Select]
if ($board !== null)
$board = (int) $board;
elseif (isset($_GET['board']))
$board = (int) $_GET['board'];

แก้เป็น -->>
โค๊ด: [Select]
// Was a board passed?
if ($board !== null)
{
// Are we using an array?
if (is_array($board))
{
// Make sure all values are numeric.
foreach ($board as $key => $board_id)

$board[$key] = (int) $board_id;
}
// Otherwise, it's probably a number.
else
{
$board = (int) $board;
}
}
// No board? Check GET variable.
elseif (isset($_REQUEST['board']))
{
// Could it be an array?
// You can pass a comma seperated list of boards, and they'll all be
// used (eg. ?board=1,2,3,4,5).
if (strpos($_REQUEST['board'], ',') !== false)
{
// Split up the string.
$board = explode(',', $_REQUEST['board']);
// Make sure all values are numeric.
foreach ($board as $key => $board_id)

$board[$key] = (int) $board_id;
}
// Probably a number (backwards-compatibility).
else
{
$board = (int) $_REQUEST['board'];
}
}

// WHERE clause in the queries.
$boardQuery = 'ID_BOARD ' . (is_array($board) ? ('IN (' . implode(',', $board) . ')') : ('= ' . $board));

ค้นหา -->>
โค๊ด: [Select]
// Make sure guests can see this board.
$request = db_query("
SELECT ID_BOARD
FROM {$db_prefix}boards
WHERE " . ($board === null ? '' : "ID_BOARD = $board
AND ") . "FIND_IN_SET(-1, memberGroups)
LIMIT 1", __FILE__, __LINE__);
if (mysql_num_rows($request) == 0)
{
if ($output_method == 'echo')
die($txt['smf_news_error2']);
else
return array();
}
list ($board) = mysql_fetch_row($request);
mysql_free_result($request);

แก้เป็น -->>
โค๊ด: [Select]
// If no boards were passed, get the first board guests can view
// Otherwise, check if all the passed boards are valid.
$request = db_query("
SELECT ID_BOARD, name
FROM {$db_prefix}boards
WHERE " . ($board === null ? '' : $boardQuery . '
AND ') . 'FIND_IN_SET(-1, memberGroups)
ORDER BY ID_BOARD ASC' . ($board === null ? '
LIMIT 1' : ''), __FILE__, __LINE__);

// No boards? That's bad.
if (mysql_num_rows($request) == 0)
{
if ($output_method == 'echo')
die($txt['smf_news_error2']);
else
return array();
}

$boardInfo = array();
// Empty the board ID array - We're grabbing the IDs from scratch.
unset($board);
$board = array();

// Loop through all returned boards.
while ($row = mysql_fetch_assoc($request))
{
// Add this board to the arrays.
// Board info - Used later on (in the stuff returned)
$boardInfo[$row['ID_BOARD']] = $row;
$board[] = $row['ID_BOARD'];
}
mysql_free_result($request);

// Let's get the new WHERE clause
// Note: The $board array does not need to be sanitised, its data has been
// returned from the database (and is safe).
$boardQuery = 'ID_BOARD IN (' . implode(',', $board) . ')';

ค้นหา -->>
โค๊ด: [Select]
WHERE ID_BOARD = $board

แก้เป็น -->>
โค๊ด: [Select]
WHERE $boardQuery

ค้นหา -->
โค๊ด: [Select]
m.ID_MSG, t.locked

เพิ่มไว้หลัง(บรรทัดเดิม)-->>
โค๊ด: [Select]
, t.ID_BOARD

ค้นหา -->
โค๊ด: [Select]
'link' => !empty($row['ID_MEMBER']) ? '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER'] . '">' . $row['posterName'] . '</a>' : $row['posterName']
),
'locked' => !empty($row['locked']),

เพิ่มไว้หลัง -->>
โค๊ด: [Select]
'board' => array(
'id' => $row['ID_BOARD'],
'name' => $boardInfo[$row['ID_BOARD']]['name'],
'href' => $scripturl . '?board=' . $row['ID_BOARD'],
'link' => '<a href="' . $scripturl . '?board=' . $row['ID_BOARD'] . '">' . $boardInfo[$row['ID_BOARD']]['name'] . '</a>'
),

สร้างไฟล์ showtopic.php
ขออภัย! ท่านไม่สามารถเข้าถึงข้อมูลส่วนนี้ได้ กรุณาอ่าน เงื่อนไขการใช้งาน DexMore.Com

เอาไปไว้ใน $boarddir

วิธีที่ 2 แสดงโดยเลือกเฉพาะบอร์ด
สร้างไฟล์ lasttopic.php
ขออภัย! ท่านไม่สามารถเข้าถึงข้อมูลส่วนนี้ได้ กรุณาอ่าน เงื่อนไขการใช้งาน DexMore.Com

เอาไปไว้ใน $boarddir
คำอธิบายอยู่ใหนโค๊ดแล้ว

วิธีแทรกในหน้าเว็บโดยใช้ iframe

โค๊ด: [Select]
<iframe marginwidth="0" marginheight="0" src="../forums/showtopics.php" name="board" frameborder="0" width="ความกว้าง" height="ความสูง" scrolling="0" ></iframe>

ลิงค์หัวข้อ: http://dexmore.com/topic/331
Thx by anucha,
Windows XP    Firefox 3.5.7   see ip บันทึกการเข้า
ดูรายการสิ่งของสำหรับบอกรักใครสักคน ก็ส่งไปให้เขาเลย!  สำหรับติดหมุดกระทู้ของคุณ!  เพิ่มเวลาที่อยู่ในระบบอีก 12 ชั่วโมง  น้องหมี..เอาไว้กอดนอนแทนกิ๊ก  สำหรับบอกรักใครสักคน ก็ส่งไปให้เขาเลย!  
*



Thailand   ชาย ออฟไลน์ เว็บไซต์
คือผมทำตามวิธีที่ 2 นะครับ

ตัวอย่างนะครับ

ผมจะอยากให้มันโชว์ของบอร์ดที่ 29.0

ผมต้องใส่ ID บอร์ดแบบนี้ไหมครับ >  $board = "29.0";

แล้วส่วนตัวนี้ if ($sboard=="0") เลข 0 ผมต้องเปลี่ยนเป็น 29.0 ด้วยใช่ไหมครับ


 



ลิงค์หัวข้อ: http://dexmore.com/topic/331
Thx by anucha
Windows XP    Chrome 5.0.375.126   see ip บันทึกการเข้า
*
*


!Personal

Germany   ชาย ผู้เริ่มต้นกระทู้นี้ ออฟไลน์544566157 DexMore DexMore DexMore
เว็บไซต์
แก้ไขค่าตามคำอธิบายโค้ดเลยครับ

ตรงใหนไม่อธิบาย ก็ไม่ต้องแก้ไขอะไร

ลิงค์หัวข้อ: http://dexmore.com/topic/331
Windows XP    Firefox 3.6.8   see ip บันทึกการเข้า
ดูรายการสิ่งของสำหรับบอกรักใครสักคน ก็ส่งไปให้เขาเลย!  สำหรับติดหมุดกระทู้ของคุณ!  เพิ่มเวลาที่อยู่ในระบบอีก 12 ชั่วโมง  น้องหมี..เอาไว้กอดนอนแทนกิ๊ก  สำหรับบอกรักใครสักคน ก็ส่งไปให้เขาเลย!  
ส่งหัวข้อนี้พิมพ์ หน้า: 1 
กระโดดไป:  

Creative Commons License

SMF Thai Translation Powered by SMF © 2006–2012, Simple Machines LLC

WordPress Google เข้าเยี่ยมชมหน้านี้ล่าสุดเมื่อ : 21 พฤษภาคม 2555, 20:17:11

jQuery Plugin Copyright © 2551-2555 Themes Design & Hosting by DexMoreGroup

Sitemap | Thai Simple Machines Forum support SMF Thai

Web Begining | SMF Modifications | SMF Thai Translation Web Begining

Drupal | WordPress | CMS Joomla | jQuery Plugin | Web Graphics CMS Joomla