|
|
|
สอบถามครับผม ดึงรูปจากกระทู้มาแสดง 5 รูป ถ้ากระทู้ไหนไม่มีรูปให้ข้ามไปดึงรูปจากระทู้ถัดไปจนครบ 5 รูป จะต้องเขียนแบบไหนครับ |
|
|
|
|
|
|
|
Code
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);
}
function ssi_pic($num_top=5,$order)
{
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
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 = "?topic=".$data['id'];
$srcPic = findIMG($data['body']);
$subject = $data['subject'];
echo '<div class="boxpGal">
<div class="picpGal"><a href="'.$srcPic.'" target="_blank"" title="คลิกเพื่อดูภาพเต็ม."><img src="'.$srcPic.'" width="180" " height="150"alt=""
/></a></div><center>'.mb_substr($subject,0,25,'UTF-8').'</center>
<div class="viewAllpic"><a href="'.$topic.'" target="_blank"><center>อ่านต่อ</center></a></div>
</div>';
}
}
จากรูปจะเห็นได้ว่ากระทู้ที่ไม่มีรูปจะแสดงขึ้นมาด้วยโดยโชว์เป็นกรอบว่างป่าว ถ้าต้องการให้ไม่แสดงกระทู้ที่ไม่มีรูป และข้ามไปดึงรูปจากกระทู้ถัดไปมาโชว์จนครบ 5 รูปต้องเพิ่ม code ส่วนไหนเพิ่มเติมอีกครับ
Tag : PHP, HTML/CSS, CakePHP
|
|
|
|
|
|
Date :
2012-10-06 12:35:35 |
By :
บอย |
View :
1168 |
Reply :
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
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);
}
function ssi_pic($num_top=5,$order)
{
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
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 = "?topic=".$data['id'];
$srcPic = findIMG($data['body']);
$subject = $data['subject'];
echo '<div class="boxpGal">
<div class="picpGal"><a href="'.$srcPic.'" target="_blank"" title="คลิกเพื่อดูภาพเต็ม."><img src="'.$srcPic.'" width="180" " height="150"alt=""
/></a></div><center>'.mb_substr($subject,0,25,'UTF-8').'</center>
<div class="viewAllpic"><a href="'.$topic.'" target="_blank"><center>อ่านค่อ</center></a></div>
</div>';
}
}
ขออนุญาตใส่ code แบบ PHP เพื่อการไล่ code ที่ง่ายขึ้น
|
|
|
|
|
Date :
2012-10-06 12:46:01 |
By :
บอย |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไมคุณไม่ทำทั้งแต่ Query เลยครับ
|
|
|
|
|
Date :
2012-10-07 09:35:10 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|