ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์CMS & Free Script[SMF]วิธีดึงภาพแรกในกระทู้
หน้า: [1] 2 3 ... 7   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: [SMF]วิธีดึงภาพแรกในกระทู้  (อ่าน 37133 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
ganginwpop
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 115
ออฟไลน์ ออฟไลน์

กระทู้: 1,448



ดูรายละเอียด เว็บไซต์
« เมื่อ: 08 เมษายน 2011, 22:50:42 »

จริงๆ เคยตอบไว้ใน http://www.thaiseoboard.com/in...845.msg2534640.html#msg2534640 นี้นะครับ
แต่พอดีท่าน หนุ่มบ้านโคก PM มาขอวิธีของ SMF 2.0 ผมเลยมานั่งแก้
แต่ไหนๆก็ไหนๆแล้วเลยเอามาให้ดูทั้ง 1.1 กับ 2.0 เลยนะครับ

**แก้ไข Code จากกระทู้นู้นด้วยนะครับ มีบัคนิดหน่อย  wanwan017

ตัวอย่างนี้ผมใช้กับ SSI นะครับ
โดยผมเขียน function เพิ่มเข้าไปนะครับ

findIMG() สำหรับหา tag [img]
โค๊ด:
function findIMG($text){
preg_match_all('/\[img\].*?\[\/img\]/i',$text,$page);
foreach($page as $value)
$src = substr($value[0],5);
$src = substr($src,0,-6);
return($src);
}
อธิบายตัวแปล :
 $text = ข้อความที่มี Tag [img] อยู่เพื่อดึงภาพ


ssi_pic() สำหรับ SMF 1.1.X
โค๊ด:
function ssi_pic($num_top = 12,$order,$board)
{
global $context, $settings, $db_prefix, $txt, $scripturl, $ID_MEMBER, $user_info, $modSettings;
// Find boards with lots of posts.
$request = db_query("
SELECT t.ID_TOPIC,m.body,m.subject
FROM ({$db_prefix}topics as t , {$db_prefix}messages as m)
WHERE t.ID_FIRST_MSG=m.ID_MSG AND t.ID_BOARD=$board
ORDER BY t.".$order." DESC
LIMIT $num_top", __FILE__, __LINE__);
$topics = array();
while ($row = mysql_fetch_assoc($request))
{
$topics[] = array(
'id' => $row['ID_TOPIC'],
'body' => $row['body'],
'subject' => $row['subject']
);
}
mysql_free_result($request);
foreach ($topics as $data){
$topic = "forum/?topic=".$data['id'];
$srcPic = findIMG($data['body']);
$subject = $data['subject'];
echo '<div class="boxpGal">
<div class="picpGal"><a href="'.$srcPic.'" title="คริกเพื่อดูภาพเต็ม."><img src="'.$srcPic.'" width="150" alt="" /></a></div><center>'.mb_substr($subject,0,25,'UTF-8').'</center>
<div class="viewAllpic"><a href="'.$topic.'" target="_blank">More info</a></div>  
</div>';
}
}


ssi_pic() สำหรับ SMF 2.0 RCX
โค๊ด:
function ssi_pic($num_top = 12,$order,$board){
global $db_prefix, $scripturl, $smcFunc;
$request = $smcFunc['db_query']('', '
SELECT t.id_topic,m.body,m.subject
FROM {db_prefix}messages m,{db_prefix}topics t
WHERE t.id_first_msg=m.id_msg AND t.id_board='.$board.'
ORDER BY t.'.$order.' DESC
LIMIT '.$num_top,
array(
)
);
$posts = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
{
// Build the array.
$topics[] = array(
'id' => $row['id_topic'],
'body' => $row['body'],
'subject' => $row['subject']
);
}
$smcFunc['db_free_result']($request);
foreach ($topics as $data){
$topic = "forum/?topic,".$data['id'];
$srcPic = findIMG($data['body']);
$subject = $data['subject'];
echo '<div class="boxpGal">
<div class="picpGal"><a href="'.$srcPic.'" title="คริกเพื่อดูภาพเต็ม."><img src="'.$srcPic.'" width="150" alt="" /></a></div><center>'.mb_substr($subject,0,25,'UTF-8').'</center>
<div class="viewAllpic"><a href="'.$topic.'" target="_blank">More info</a></div>   
</div>';
}
}

อธิบายตัวแปล :
 $num_top = จำนวนที่ต้องการให้แสดง หากไม่ใส่จะเป็น 12
 $order = เรียงโดยอะไร (มากไปน้อย)
 $board = ดึงมากจากบอร์ดไหน

ตัวอย่างการใช้งาน
โค๊ด:
<? ssi_pic(20,'ID_TOPIC',4) ?>
« แก้ไขครั้งสุดท้าย: 08 เมษายน 2011, 23:05:48 โดย ganginwpop » บันทึกการเข้า

รับโม ปรับแต่ง ติดตั้ง แก้ไข บอร์ด SMF ผลงาน คลิกที่นี่

อ่านการ์ตูนออนไลน์ ที่ MangaOnlines.com
Auto Pic Post to SMF from Mthai DEMO : MangaOnlines.com

รับทำเว็บไซต์เชียงใหม่ | รับทำเว็บไซต์
ganginwpop
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 115
ออฟไลน์ ออฟไลน์

กระทู้: 1,448



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 08 เมษายน 2011, 22:57:47 »

ผลที่ได้ก็จะเป็นดังนี้ครับ (จัด html + css เองนะครับ ^^)



เอาไปเผยแพร่ได้นะครับ
แต่ยังไงก็ให้ credit ด้วยละกันเด้อ
จาก : http://Simpleyoursite.com
« แก้ไขครั้งสุดท้าย: 15 เมษายน 2012, 23:50:37 โดย ganginwpop » บันทึกการเข้า

รับโม ปรับแต่ง ติดตั้ง แก้ไข บอร์ด SMF ผลงาน คลิกที่นี่

อ่านการ์ตูนออนไลน์ ที่ MangaOnlines.com
Auto Pic Post to SMF from Mthai DEMO : MangaOnlines.com

รับทำเว็บไซต์เชียงใหม่ | รับทำเว็บไซต์
Hanuman
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 383
ออฟไลน์ ออฟไลน์

กระทู้: 3,258



ดูรายละเอียด
« ตอบ #2 เมื่อ: 08 เมษายน 2011, 23:52:53 »

สุดยอดมากมาย wanwan019
บันทึกการเข้า
bigbossbear
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 348
ออฟไลน์ ออฟไลน์

กระทู้: 4,764



ดูรายละเอียด
« ตอบ #3 เมื่อ: 09 เมษายน 2011, 00:24:05 »

 Cry สวยงาม
บันทึกการเข้า

aebb
ก๊วนเสียว
*

พลังน้ำใจ: 21
ออฟไลน์ ออฟไลน์

กระทู้: 259



ดูรายละเอียด เว็บไซต์
« ตอบ #4 เมื่อ: 09 เมษายน 2011, 00:48:07 »

สุดยอดครับขอนำไปใช้ด้วยคน
บันทึกการเข้า

ganginwpop
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 115
ออฟไลน์ ออฟไลน์

กระทู้: 1,448



ดูรายละเอียด เว็บไซต์
« ตอบ #5 เมื่อ: 09 เมษายน 2011, 01:31:27 »

จริงๆก็ยังมีปัญหาอยู่ครับ
แต่ด้วยปัญญาอันน้อยนิดของผม

แก้บ่อได้  wanwan031
ยังไงเจอบัคก็รบกวนมาบอกกันด้วยนะครับ
 wanwan017 wanwan017
บันทึกการเข้า

รับโม ปรับแต่ง ติดตั้ง แก้ไข บอร์ด SMF ผลงาน คลิกที่นี่

อ่านการ์ตูนออนไลน์ ที่ MangaOnlines.com
Auto Pic Post to SMF from Mthai DEMO : MangaOnlines.com

รับทำเว็บไซต์เชียงใหม่ | รับทำเว็บไซต์
MaMa.Killer
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 642
ออฟไลน์ ออฟไลน์

กระทู้: 3,557



ดูรายละเอียด
« ตอบ #6 เมื่อ: 09 เมษายน 2011, 01:38:45 »

ช่วยทีครับ  Tongue

กระทู้ที่ไม่มีรูปมันก็ดึงมาอ่ะครับ
 findIMG() ใส่ยังไงครับ
ขอบคุณครับ
« แก้ไขครั้งสุดท้าย: 09 เมษายน 2011, 01:44:50 โดย Oops!xxx » บันทึกการเข้า

รับโมฯ & แก้ไข และสร้าง Theme SMF, Wordpress และงานออกแบบ
Add Line Id : sodeclub
ganginwpop
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 115
ออฟไลน์ ออฟไลน์

กระทู้: 1,448



ดูรายละเอียด เว็บไซต์
« ตอบ #7 เมื่อ: 09 เมษายน 2011, 01:46:27 »

อันไหนไม่มีรูปให้ืำงี้ครับ

หา
โค๊ด:
$srcPic = findIMG($data['body']);
เพิ่ม
โค๊ด:
if(empty($srcPic))
 $srcPic = 'http://yourdomain/logo.jpg';
บันทึกการเข้า

รับโม ปรับแต่ง ติดตั้ง แก้ไข บอร์ด SMF ผลงาน คลิกที่นี่

อ่านการ์ตูนออนไลน์ ที่ MangaOnlines.com
Auto Pic Post to SMF from Mthai DEMO : MangaOnlines.com

รับทำเว็บไซต์เชียงใหม่ | รับทำเว็บไซต์
MaMa.Killer
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 642
ออฟไลน์ ออฟไลน์

กระทู้: 3,557



ดูรายละเอียด
« ตอบ #8 เมื่อ: 09 เมษายน 2011, 01:49:55 »

^
^
^
โอเคครับ ขอบคุณครับ

แต่ขอถามเพิ่มหายสงสัย ถ้าในกรณีที่เราต้องการใช้มันขึ้นตาม  Tag img จะเอา findIMG() ไปใส่ และใช้ยังไงครับ  Tongue
« แก้ไขครั้งสุดท้าย: 09 เมษายน 2011, 01:50:32 โดย Oops!xxx » บันทึกการเข้า

รับโมฯ & แก้ไข และสร้าง Theme SMF, Wordpress และงานออกแบบ
Add Line Id : sodeclub
ganginwpop
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 115
ออฟไลน์ ออฟไลน์

กระทู้: 1,448



ดูรายละเอียด เว็บไซต์
« ตอบ #9 เมื่อ: 09 เมษายน 2011, 01:56:16 »

ยังไงครับไม่เข้าใจ
คือ findIMG() ที่ผมเขียนไว้มันจะดึง เอา url ใน
โค๊ด:
[img]url[/img]
มาอะครับ
« แก้ไขครั้งสุดท้าย: 09 เมษายน 2011, 02:03:50 โดย ganginwpop » บันทึกการเข้า

รับโม ปรับแต่ง ติดตั้ง แก้ไข บอร์ด SMF ผลงาน คลิกที่นี่

อ่านการ์ตูนออนไลน์ ที่ MangaOnlines.com
Auto Pic Post to SMF from Mthai DEMO : MangaOnlines.com

รับทำเว็บไซต์เชียงใหม่ | รับทำเว็บไซต์
MaMa.Killer
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 642
ออฟไลน์ ออฟไลน์

กระทู้: 3,557



ดูรายละเอียด
« ตอบ #10 เมื่อ: 09 เมษายน 2011, 02:02:25 »

อ่อ เข้าใจละ  wanwan004
บันทึกการเข้า

รับโมฯ & แก้ไข และสร้าง Theme SMF, Wordpress และงานออกแบบ
Add Line Id : sodeclub
thaizeal
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 120
ออฟไลน์ ออฟไลน์

กระทู้: 2,202



ดูรายละเอียด
« ตอบ #11 เมื่อ: 09 เมษายน 2011, 02:40:24 »

อย่างนี้ต้องบุ๊คมาร์ค Cry ขอบคุณครับ
บันทึกการเข้า
chanun
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 69
ออฟไลน์ ออฟไลน์

กระทู้: 1,912



ดูรายละเอียด เว็บไซต์
« ตอบ #12 เมื่อ: 09 เมษายน 2011, 03:37:49 »

มีประโยชน์มากครับ เดียวเอาไว้ประยุกต์ใช้กับอย่างอื่น พอดีไม่ได้ใช้ smf Embarrassed
บันทึกการเข้า



ซื้อเครื่องเล่นเกมคุณภาพและเช็คราคา PS4 PS3 PSP XBOX WII 3DS ได้ที่นี้
psp ราคา
kamjam
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 160
ออฟไลน์ ออฟไลน์

กระทู้: 2,278



ดูรายละเอียด
« ตอบ #13 เมื่อ: 09 เมษายน 2011, 04:36:26 »

กระทู้มีสาระ
อิอิ
 wanwan017
บันทึกการเข้า

หนุ่มบ้านโคก
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 119
ออฟไลน์ ออฟไลน์

กระทู้: 3,128



ดูรายละเอียด
« ตอบ #14 เมื่อ: 09 เมษายน 2011, 06:59:33 »

มันจะขึ้นรูปเฉพาะในกรณีที่
โค๊ด:
โค๊ด:
[img]xxxx[/img]
แบบนี้เท่านั้น

แต่ถ้า
โค๊ด:
โค๊ด:
[img width=900 height=675]xxxxxx[/img]
แบบนี้รูปจะไม่ขึ้นทันที

จึงอยากจะถามวีธีเขียน preg_match_all('/\[img \].*?\[\/img\]/i',$text,$page); เจ้าตัวนี้ให้มันแสดงรูปแบบที่ 2 ได้อะครับ
พอจะมีใครช่วยได้บ้างมั้ย
โค๊ด:
function findIMG($text){
preg_match_all('/\[img\].*?\[\/img\]/i',$text,$page);
foreach($page as $value)
$src = substr($value[0],5);
$src = substr($src,0,-6);
return($src);
}
แก้ตรงไหนบ้าง Tongue
บันทึกการเข้า

หนุ่มบ้านโคก
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 119
ออฟไลน์ ออฟไลน์

กระทู้: 3,128



ดูรายละเอียด
« ตอบ #15 เมื่อ: 09 เมษายน 2011, 07:41:21 »

ได้แล้วครับพี่ หุหุ มั่ว ๆๆๆ
โค๊ด:
function findIMG($text){
if (preg_match_all('/\[img\].*?\[\/img\]/i',$text,$page)){
foreach($page as $value)
$src = substr($value[0],5);
$src = substr($src,0,-6);
return($src);}
if (preg_match_all('/\[img width=\d{3} height=\d{3}\].*?\[\/img\]/i',$text,$page)){
foreach($page as $value)
$src = substr($value[0],26);
$src = substr($src,0,-6);
return($src);}
}
เพิ่มเติมกันเอาเองน่ะ
บันทึกการเข้า

ganginwpop
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 115
ออฟไลน์ ออฟไลน์

กระทู้: 1,448



ดูรายละเอียด เว็บไซต์
« ตอบ #16 เมื่อ: 09 เมษายน 2011, 15:00:57 »

ขอบคุณครับ
 wanwan017
บันทึกการเข้า

รับโม ปรับแต่ง ติดตั้ง แก้ไข บอร์ด SMF ผลงาน คลิกที่นี่

อ่านการ์ตูนออนไลน์ ที่ MangaOnlines.com
Auto Pic Post to SMF from Mthai DEMO : MangaOnlines.com

รับทำเว็บไซต์เชียงใหม่ | รับทำเว็บไซต์
หนุ่มบ้านโคก
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 119
ออฟไลน์ ออฟไลน์

กระทู้: 3,128



ดูรายละเอียด
« ตอบ #17 เมื่อ: 09 เมษายน 2011, 15:05:16 »

ขอบคุณครับ
 wanwan017
ใช้ได้ไหมครับ Embarrassed
บันทึกการเข้า

ganginwpop
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 115
ออฟไลน์ ออฟไลน์

กระทู้: 1,448



ดูรายละเอียด เว็บไซต์
« ตอบ #18 เมื่อ: 09 เมษายน 2011, 15:07:09 »

ไม่ได้ลองครับ
Bookmark เก็บไว้ เฉยๆ

พอดีไม่มีบอร์ดให้ลองมือ  wanwan004
บันทึกการเข้า

รับโม ปรับแต่ง ติดตั้ง แก้ไข บอร์ด SMF ผลงาน คลิกที่นี่

อ่านการ์ตูนออนไลน์ ที่ MangaOnlines.com
Auto Pic Post to SMF from Mthai DEMO : MangaOnlines.com

รับทำเว็บไซต์เชียงใหม่ | รับทำเว็บไซต์
praduk
บุคคลทั่วไป
« ตอบ #19 เมื่อ: 09 เมษายน 2011, 15:21:03 »

ทำยังไงหว่า งง แฮะ
บันทึกการเข้า
หน้า: [1] 2 3 ... 7   ขึ้นบน
พิมพ์