 |
ช่วยทีครับ ทำระบบเสิทแล้วแบบ จอยเทเบิ้ล แต่ค้นได้แต่หัวข้อครับ |
|
 |
|
|
 |
 |
|
ทำ คอมโพเน้นขึ้นมาใหม่ในจูมลา แล้วลองทำระบบเสิทครับ เป็นการเสิทจาก เทเบิ้ลสองตัว แต่มันออกแค่
หัวข้อของสองตารางเองครับ เช่นค้นหาคำว่า ประเทศไทย มันขึ้น แต่หัวข้อหลักและรองจากสองตาราง
แต่มันไม่ค้นหาทั้งเวปอ่ะครับ พวกเนื้อหา หรือ บทความ แบบ Search All
คือผมสับสนตรงนี้อ่ะครับ
Code (SQL)
FROM tb_k2_categories
LEFT JOIN tb_k2_items ON tb_k2_categories.id=tb_k2_items.catid
WHERE title LIKE '%".$kw."%'
ORDER BY tb_k2_categories.id";
อยากแค่แบบค้นหาคำทั้งหมดจาก
Code (SQL)
tb_k2_categories.id,
tb_k2_categories.name,
tb_k2_categories.description,
tb_k2_items.id,
tb_k2_items.catid,
tb_k2_items.title,
tb_k2_items.introtext,
tb_k2_items.`fulltext`
ในสองตางรางคือ แคทตาลอต กับ ไอเทมอ่ะครับ
Code (PHP)
public function getKMSearchList() {
$kw = JRequest::getVar('keyword');
$db = JFactory::getDbo();
$sql = "SELECT
tb_k2_categories.id,
tb_k2_categories.name,
tb_k2_categories.description,
tb_k2_items.id,
tb_k2_items.catid,
tb_k2_items.title,
tb_k2_items.introtext,
tb_k2_items.`fulltext`
FROM tb_k2_categories
LEFT JOIN tb_k2_items ON tb_k2_categories.id=tb_k2_items.catid
WHERE title LIKE '%".$kw."%'
ORDER BY tb_k2_categories.id";
$db->setQuery($sql);
$rs = $db->LoadObjectList();
return $rs;
}
ขอทราบถามเพิ่มหน่อยครับว่า ถ้าต้องการแบ่งหน้าเพจเช่น โชว์ที่ละ ห้าแถว แล้วที่เหลือแบ่งหน้าไปต้องทำไงอ่ะครับ
คือพอเสิทแล้วออกมาหมดเลยครับ มีกี่หน้า
ขอบคุณครับผม
Tag : PHP
|
ประวัติการแก้ไข 2014-11-22 00:32:20 2014-11-22 00:32:47 2014-11-22 00:50:26
|
 |
 |
 |
 |
Date :
2014-11-22 00:29:05 |
By :
sarut14 |
View :
755 |
Reply :
5 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (PHP)
$sql_count="SELECT count(id) FROM tb_k2_items WHERE title LIKE '%$kw%';
$db->setQuery($sql_count);
$rs = $db->LoadObjectList();
$per_page=5;
$count = $rs[0][0];
$all_page=ceil( $count / $per_page );
$page = 1; // แล้วแต่กำหนด ส่งค่ามาเซท
$start_row = ($page - 1) * $per_page;
$qr="
SELECT cate.id, cate.name, cate.description
, item.id item_id, title, introtext, `fulltext`
FROM (
SELECT id, catid, title, introtext, `fulltext`
FROM tb_k2_items
WHERE title LIKE '%".$kw."%'
) as item
LEFT JOIN tb_k2_categories cate
ON cate.id=item.catid
limit $start_row, $per_page
";
|
ประวัติการแก้ไข 2014-11-22 09:01:53
 |
 |
 |
 |
Date :
2014-11-22 08:52:24 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบพระคุณมากครับ เอาโค๊ดตัวนี้ไปแทนตัวเก่าเลยใช่ไหมครับ
มันติดเออเร่อ Fatal error: Call to a member function setQuery() on a non-object
จาก ค่านี้ครับ หมายถึง
$db->setQuery($sql_count);
$rs = $db->LoadObjectList();
|
ประวัติการแก้ไข 2014-11-22 09:47:30
 |
 |
 |
 |
Date :
2014-11-22 09:28:57 |
By :
sarut14 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เอาไปแปลงครับ โค๊ดคุณมันเป็น คลาส ผมไม่รู้ คำสั่งทั้งหมดครับ นี่ก็เดาเอา 5555
$db->setQuery();ลอกมาจาก ตัวอย่าง อันสุดท้ายครับ
ศึกษารูปแบบ แล้วไปประยุกต์ใช้ครับ
ปล. ต้องประกาศ $db = JFactory::getDbo(); ก่อนครับ
|
ประวัติการแก้ไข 2014-11-22 09:59:00
 |
 |
 |
 |
Date :
2014-11-22 09:56:56 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
อ๋อครับผม ใช่ๆผมลืมว่าไปว่ามันเเป็นคราสครับ เดี๊ยวจะลองผิดลองถูกดูครับ มีอีกคำถามหน่อยนึงได้ไหมครับ
การตัดแถวไม่อยากเป็นแนวตั้ง คือ ตัวเป็นแนวนอนนี่ใช้คำสั่งอย่างไรครับ
พอดีผมลีส เช็คบ๊อคออกมามด มันยาวพรืดเลย เลยอยากให้มัน เป็นแนวนอน
น่าจะดูสั้นกว่าครับ เช่นคำสั่งพื้นๆที่ผมเขียนมา
Code (PHP)
<?php
foreach ($this->FullSearchListLv1 as $item):
$db = JFactory::getDbo();
$sql = "SELECT * FROM tb_menu
WHERE menutype='ttdmainmenu'
AND level='2'
AND parent_id='".$item->id."'
ORDER BY id ";
$db->setQuery($sql);
$rs = $db->loadObjectList();
?>
<input name="cat" type="checkbox" value="<?php ?>"> <?php echo $item->title; ?><br>
<?php foreach ($rs as $item2): ?>
<input name="cat" type="checkbox" value="<?php ?>"> <?php echo $item2->title; ?><br>
<?php endforeach; ?>
<?php endforeach; ?>
|
 |
 |
 |
 |
Date :
2014-11-22 10:27:54 |
By :
sarut14 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เอา <br> ออก ก็ต่อกันเป็น แถวเดียวแล้วครับ
|
 |
 |
 |
 |
Date :
2014-11-22 10:42:36 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|