ผมเขียนฟังชั่นแบบนี้ แต่มีวิธีไหนที่อ่านค่าจากเบสแล้วเอามาแสดงโดยมีเชคบอคด้านหน้า ค่าที่อ่านมี2เลเวลคับ
Code (JavaScript)
<input name="cat" type="checkbox" value="1"> <?php echo $item_a->NAME; ?><br>
<?php foreach ($rs as $item_b): ?>
<input type="checkbox" name="cat_b[]" value="<?php $item_b->id; ?>"> <?php echo $item_b->NAME; ?><br>
<?php endforeach; ?>
ตัวรับ
Code (PHP)
<?php
foreach( $_REQUEST['cat_b'] as $k => $vl){
echo 'test ', $k, '=>', $vl;
}
?>
ทดสอบแล้วนำไปประยุกต์ใช้นะครับ
Date :
2014-11-26 16:25:07
By :
Chaidhanan
ลองเอาโค๊ดนี้ไป ลองดูครับ ทำความเข้าใจ กับตัวแปล array ใน checkbox ก่อนครับ
Code (PHP)
<?php
if(isset($_REQUEST['ok'])){
$test = print_r($_REQUEST, true);
}else $test='';
class t{
public $id;
public $NAME;
public function __construct( $vl){
$this->id=$vl;
$this->NAME='TEST '.$vl;
}
}
$rs=array( $A= new t(1), $B=new t(2), $C=new t(3));
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<pre><?PHP echo $test; ?></pre>
<form >
<input name="cat" type="checkbox" value="1"> <?php echo 'NAME'; ?><br>
<?php foreach ($rs as $k=>$item_b): ?>
<input type="checkbox" name="cat_b[]" value="<?php echo $item_b->id; ?>"> <?php echo $item_b->NAME; ?><br>
<?php endforeach; ?>
<input type="submit" name="ok" value="ok1" />
</form>
</body>
</html>
ประวัติการแก้ไข 2014-11-26 17:26:12
Date :
2014-11-26 17:20:26
By :
Chaidhanan
โค๊ด คห 2 มีแก้บักครับ
Date :
2014-11-26 17:26:40
By :
Chaidhanan
Date :
2014-11-26 17:29:20
By :
mr.win
ตอนนี้ผมลองเอาค่าเช็คบ๊อคมาเก็บ ตามโค๊ดนี้ครับ ซึ่งเวลาเชคบอคแล้วจะได้ value=id ออกไปครับ เช่นถ้าติ๊กกรุ๊ป id5 ไม่ว่าจะมี
เมนูย่อยแค่ไหน ก็จะได้ value คือ 5 ครับ ที่นี้จะเสิทต่ออย่างไรดีครับ เริ่มรู้แล้วว่ามันได้ค่า array id มาแล้วครับ
Code (PHP)
<form action="index.php?option=com_km&view=km&layout=result2" method="post">
<input name="fullsearch" type="text" value="<?php echo $kw; ?>" size="36" /><br><br>
<input name="and_or" type="radio" value="and" checked> : AND
<input name="and_or" type="radio" value="or"> : OR <br><br>
<?php
foreach ($this->FullSearchListLv1 as $item):
$db = JFactory::getDbo();
$sql = "SELECT
cate.id,
cate. NAME,
cate.parent
FROM
tb_k2_categories AS cate
WHERE cate.id != 1
AND cate.id != 2
AND parent ='".$item->id."'";
$db->setQuery($sql);
$rs = $db->loadObjectList();
?>
<input name="list[]" type="checkbox" value="<?php echo $item->id; ?>" onclick="JavaScript:check_cat(<?php echo $item->id; ?>);"> <?php echo $item->NAME; ?><br>
<?php foreach ($rs as $item2): ?>
<input type="checkbox" style="margin-left: 20px;" name="cat[]" class="cat_<?php echo $item->id;?>" value="<?php $item2->id; ?>"> <?php echo $item2->NAME; ?><br>
<?php
endforeach; ?>
<?php
endforeach; ?>
<br>
<br>
<button name="bt" type="submit" class="btn-search2f" value="search-adv">ค้นหา</button>
</form>
ถ้าผมจะเอาค่า Value ที่ได้ กับ กล่อง Searchbox เวลากรอกข้อความ มาค้นหาในเทเบิ้ลนี้มีแนวทางเขียนอย่างไรครับผม
คือ ถ้าได้ค่าจากเชคบอคมาแล้วคือ value=id อะไร แล้วเอาคำที่กรอกค้นหามารวมด้วย จะไปหาเทเบิ้ลในรูปต่อไงครับ
โดยมีเงื่อนไขคือ ต้องเสิทจากเชคบอคที่เลือกครับ
Date :
2014-11-27 12:17:06
By :
sarut14
$search = "'" . implode( "' ,'", $_REQUEST['list']) . "'"
where type_id in ( $search )
อันนี้เป็น OR คือ ตรงกับอันไหนก็ได้
ที่นี้ แบบ And มันเป็นยังไง ยังงงอยู่เหมือนกัน ต้องมี อยู่ใน ทุกรายการ หรือเปล่า ค่อยแสดงออกมา
แล้วใช้อะไรเช็คว่ามันมีอยู่ในทุกรายการ เอาตัวอย่างข้อมูล ที่จะให้แสดงออกมาดูหน่อยครับ
ซัก 5-10 records
Date :
2014-11-27 12:32:00
By :
Chaidhanan
คือผมติดแบบแล้วครับ จากรูปนี้นะครับ ผมลีสเบสออกมาได้แบบนี้ครับ แล้วเขียนโค๊ดลงไปเพื่อที่จะทำไงให้เก็บ
ค่าไอดีเอามาค้นหาได้ อันนี้ขอรบกวนจากใจแบบเต็มๆจริงครับ เรื่องการเช็คค่าหลายค่าแล้วเสิทหาตามเชค
- จากรูปครับ สมมุติผมจะติ๊กค้นแบบนี้ โดยที่ติ๊กแล้ว ไปหาในเทเบิ้ลรูปที่สามครับ
รูปแรกนี่คือเทเบิ้ลหัวข้อ ซึ่งมีซับเมนูในนั้นอยู่ โดยใช้ ฟิว Parent ในการอ้างอิง ซับเมนูกับเมนูหลัก
ผลที่ได้คือ มันจะเรียงตามรูปบนครับผม เมนู--ซับเมนู เป็นเชคบอคนะครับ
รูปบน คือผมไฮไลท์ไว้ครับว่า นี่คือกลุ่่มเดียวกัน แต่ปัญหาคือ ผมจะเอา ID มันเก็บเป็น อารเรย์ในการค้นหาต่ออย่างไร
คือผมเขียนสคริปเชค ALL ไว้ ในโค๊ดเรียกตามรูปแรกออกมา กลายเป็นว่า ซับเมนูกับเมนูหลัก value เดียวกัน T_T
รูปนี้คือเทเบิ้ลที่เก็บข้อมูลครับ โดยเอาเชคบอค กับ คำค้นหามาให้ในเทเบิล้นี้ครับ ฟิวที่หาคือ id,title,introtext,fulltext ครับ
Code (PHP)
<form action="index.php?option=com_km&view=km&layout=result2" method="post">
<input name="fullsearch" type="text" value="<?php echo $kw; ?>" size="36" /><br><br>
<input name="and_or" type="radio" value="and" checked> : AND
<input name="and_or" type="radio" value="or"> : OR <br><br>
<?php
foreach ($this->FullSearchListLv1 as $item):
$db = JFactory::getDbo();
$sql = "SELECT
cate.id,
cate. NAME,
cate.parent
FROM
tb_k2_categories AS cate
WHERE cate.id != 1
AND cate.id != 2
AND parent ='".$item->id."'";
$db->setQuery($sql);
$rs = $db->loadObjectList();
?>
<input name="list[]" type="checkbox" value="<?php echo $item->id; ?>" onclick="JavaScript:check_cat(<?php echo $item->id; ?>);"> <?php echo $item->NAME; ?><br>
<?php foreach ($rs as $item2): ?>
<input type="checkbox" style="margin-left: 20px;" name="cat[]" class="cat_<?php echo $item->id;?>" value="<?php $item2->id; ?>"> <?php echo $item2->NAME; ?><br>
<?php
endforeach; ?>
<?php
endforeach; ?>
<br>
<br>
<button name="bt" type="submit" class="btn-search2f" value="search-adv">ค้นหา</button>
</form>
--นี่คือฟอร์มที่ผมเขียนครับ ออกมาเป็นแบบรูปแรกครับ
สรุปที่ผมไม่เข้าใจคือ เขียนโค๊ดค้นหาอย่างไร แล้วอารเรย์จากโค๊ดผมเก็บจากตรงไหนได้บ้างครับ
โดยที่ ซับเมนูก็คือหาจากไอดีมันครับ
สคริปจาว่าที่ผมดักคือ แค่ลูกเล่นเอามาทำกรุ๊ปอ่ะครับ จริงๆคือค่าที่ค้นหาซับเมนูคือ value=id มันเลยครับ
รบกวนหน่อยนะครับ อยากรู้โค๊ดการเขียนจริงๆครับ เรื่องเสิท
Date :
2014-11-27 14:30:39
By :
sarut14
Code (PHP)
<form action="index.php?option=com_km&view=km&layout=result2" method="post">
<input name="fullsearch" type="text" value="<?php echo $kw; ?>" size="36" /><br><br>
<input name="and_or" type="radio" value="and" checked> : AND
<input name="and_or" type="radio" value="or"> : OR <br><br>
<?php
foreach ($this->FullSearchListLv1 as $item){
$db = JFactory::getDbo();
$sql = "SELECT `id`, `NAME`, `parent` FROM tb_k2_categories WHERE id >2 AND parent ='$item->id' ";
$db->setQuery($sql);
$rs = $db->loadObjectList();
echo " <input type='checkbox' name='cat[]' value='{$item->id}'
onclick='check_cat( {$item->id} )'> {$item->NAME}<br>\n";
foreach ($rs as $item2){
echo " <input type='checkbox' name='cat[]' class='cat_{$item->id}'
value='{$item2->id}' style='margin-left: 20px;' > {$item2->NAME}<br>\n";
}
}
?>
<br>
<br>
<button name="bt" type="submit" class="btn-search2f" value="search-adv">ค้นหา</button>
</form>
ตัวรับ
Code (PHP)
<?php
$in_field = implode( "' , '", $_POST['cat']);
$sql = "SELECT * from ตารางใส่ชื่อเอาเอง where `cat_id` in ( $in_field ) ";
$db->setQuery($sql);
$rs = $db->loadObjectList();
foreach( $rs as $ro){
print_r($ro);
}
?>
checkbox main และ chedkbox sub ใช้ name ชื่อเดียวกันได้ ค่าที่ส่งมาใช้ได้ทั้งคู่ อ้างอิง ที่เดียวกัน
Date :
2014-11-27 15:21:24
By :
Chaidhanan
ขอบคุณครับได้แล้วครับ แต่ติดปัญหาหน่อยคือว่า ถ้าเชคบอคแล้วเสิทมันขึ้นค้นหาใน ID มาให้ครับ แต่ยังติดตรง
ถ้าใส่คียเวิดที่ต้องการค้นหา + เชคบอค ด้วย คียเวิดมันไม่หาให้ครับ ต้องเพิ่มตรงไหนไหมครับ
Code (PHP)
$in_field = implode( " , ", $_POST['cat']);
$db = JFactory::getDbo();
$sql = "SELECT * from tb_k2_items where catid in ( $in_field ) ";
//echo $sql; exit;
$db->setQuery($sql);
$rs = $db->loadObjectList();
$i = 1;
foreach ($rs as $ro){
$link = 'index.php?option=com_km&view=km&layout=detail&k2id='.$ro->id.'';
$img = '';
echo <<<HTML
<li><img src="images/$img" alt="img"><a href="$link"><span>{$ro->title}</span></a></li>
HTML;
}
ข้อความที่ใส่คียเวิด
<input name="fullsearch" type="text" value="<?php echo $kw; ?>" size="36" />
Date :
2014-11-27 22:42:19
By :
sarut14
$and_chkbox = $textinput>''? ($is_and? ' and ' : ' or ') . " introtext like '%$textinput%' " : '';
04.$sql = "SELECT * from tb_k2_items where catid in ( $in_field ) $and_chkbox ";
Date :
2014-11-28 06:36:28
By :
Chaidhanan
ยังเสิทคำค้นหาไม่ได้ครับ ไม่รู้ว่าผมเขียนแบบนี้ถูกไหมครับ เริ่มต้น
Code (PHP)
<form action="index.php?option=com_km&view=km&layout=result2" method="post">
<input name="keyword" type="text" value="<?php echo $kw; ?>" size="36" /><br><br>
<input name="and_or" type="radio" value="and" checked> : AND
<input name="and_or" type="radio" value="or"> : OR <br><br>
<?php
foreach ($this->FullSearchListLv1 as $item){
$db = JFactory::getDbo();
$sql = "SELECT `id`, `NAME`, `parent` FROM tb_k2_categories WHERE id >0 AND parent ='$item->id' ";
$db->setQuery($sql);
$rs = $db->loadObjectList();
echo " <input type='checkbox' name='cat[]' value='{$item->id}'
onclick='check_cat( {$item->id} )'> {$item->NAME}<br>\n";
foreach ($rs as $item2){
echo " <input type='checkbox' name='cat[]' class='cat_{$item->id}'
value='{$item2->id}' style='margin-left: 20px;' > {$item2->NAME}<br>\n";
}
}
?>
<br>
<br>
<button name="bt" type="submit" class="btn-search2f" value="search-adv">ค้นหา</button>
</form>
----ฟอร์มที่ส่งไปครับ
Code (PHP)
<?php
$keyword = JRequest::getVar('keyword');
$in_field = implode( " , ", $_POST['cat']);
$db = JFactory::getDbo();
$and_chkbox = $keyword>''? ($is_and? ' and ' : ' or ') . " introtext like '%$keyword%' " : '';
$sql = "SELECT * from tb_k2_items where catid in ( $in_field ) $and_chkbox ";
//echo $sql; exit;
$db->setQuery($sql);
$rs = $db->loadObjectList();
$i = 1;
foreach ($rs as $ro){
$link = 'index.php?option=com_km&view=km&layout=detail&k2id='.$ro->id.'';
$img = '';
echo <<<HTML
<li><img src="images/.$img." alt="img"><a href="$link"><span>{$ro->title}</span></a></li><br>
HTML;
}
-- หน้ารับผมมีการเปลี่ยนชื่อตัวแปรและเพิ่ม $keyword = JRequest::getVar('keyword');
แต่ว่ามันค้นหาแต่เชคบอคอ่ะครับ ถ้าลองใช้คำค้นหามันค้นยังไม่ได้ครับ หรือ ใช้คำค้นหา+เชคบอค ก็จะหาแต่เชคบอคครับ
ส่วน AND OR มีค่าเท่ากันครับคือ และ
ประวัติการแก้ไข 2014-11-28 11:43:06
Date :
2014-11-28 11:03:55
By :
sarut14
เอา tag code ครอบครับ อ่านแล้วเมา 5555
Date :
2014-11-28 11:08:57
By :
Chaidhanan
แหะๆ ขอโทดด้วยขอรับ ใส่แท๊กแล้วครับ ขอสอบถามเพิ่มเป็นแนวทางครับ ถ้าผมจะใส่โค๊ดเพิ่มพวกการตัดหน้าเพจให้แสดง
แค่สิบหน้า ที่เหลือมีก็มีลิ้งตัดหน้าไป ผมจะใช้โค๊ดนี้สวมตรงไหนได้ครับ ประเด็นคือ โค๊ดรับค่ามันมาแบบข้างบน
ผมติดตรง
Code (PHP)
<?php
$in_field = implode( " , ", $_POST['cat']);
$db = JFactory::getDbo();
$and_chkbox = $keyword>''? ($is_and? ' and ' : ' or ') . " introtext like '%$keyword%' " : '';
$sql = "SELECT * from tb_k2_items where catid in ( $in_field ) $and_chkbox ";
//echo $sql; exit;
$db->setQuery($sql);
$rs = $db->loadObjectList();
$i = 1;
foreach ($rs as $ro){
$link = 'index.php?option=com_km&view=km&layout=detail&k2id='.$ro->id.'';
$img = '';
echo <<<HTML
<li><img src="images/$img" alt="img"><a href="$link"><span>{$ro->title}</span></a></li><br>
HTML;
}
?>
คือตรงลูปตั้งแต่ &i=1 Forreach เป็นต้นมา มันหาช่องทางใส่หน้าตัดเพจไม่ได้ครับ โลจิคโค๊ดที่ผมจะเอามาใช้สวมครับ
Code (PHP)
$strSQL = "select * from account where username like '%".$_REQUEST['search']."%' order by username";
}
//Function WS page >>>>>>>>>>>>>
$Per_Page = 20;
if ( !$Page )
$Page = 1;
$Prev_Page = $Page - 1;
$Next_Page = $Page + 1;
$result = mysql_query( $strSQL );
$Page_start = ( $Per_Page * $Page ) - $Per_Page;
$Num_Rows = mysql_num_rows( $result );
if ( $Num_Rows <= $Per_Page )
$Num_Pages = 1;
elseif ( ( $Num_Rows % $Per_Page ) == 0 )
$Num_Pages = ( $Num_Rows / $Per_Page );
else
$Num_Pages = ( $Num_Rows / $Per_Page ) + 1;
$Num_Pages = ( int ) $Num_Pages;
if ( ( $Page > $Num_Pages ) || ( $Page < 0 ) )
print "จำนวน $Page มากกว่า $Num_Pages";
$strSQL .= " LIMIT $Page_start, $Per_Page";
$result = mysql_query( $strSQL );
$totals = mysql_num_rows($result);
อันนี้สร้างลิ้งปุ่มหน้า
Code (PHP)
<?php
if ( $Prev_Page )
echo "<a href=\"index2.php?option=user_history&submit&start=".$_REQUEST['start']."&end=".$_REQUEST['end']."&Page=$Prev_Page\">< Prev </a>";
for ( $i=1; $i<=$Num_Pages; $i++ )
{
if ( $i != $Page ) echo "<a href=\"index2.php?option=user_history&submit&start=".$_REQUEST['start']."&end=".$_REQUEST['end']."&Page=$i\">$i </a>";
else echo " <b>[$i]</b> ";
}
if ( $Page != $Num_Pages )
echo "<a href=\"index2.php?option=user_history&submit&start=".$_REQUEST['start']."&end=".$_REQUEST['end']."&Page=$Next_Page\"> Next ></a>";
?>
ประวัติการแก้ไข 2014-11-28 11:56:17
Date :
2014-11-28 11:44:34
By :
sarut14
$and_chkbox = $keyword>''? ($is_and ? ' and ' : ' or ') . " introtext like '%$keyword%' " : '';
สีแดงได้กำหนดค่าหรือยัง ควรมาจาก radio and or
ส่วนบันทัดที่ 8 เปิดใช้ก่อนครับ แล้วเอา $sql มาให้ดูหน่อยครับ
Date :
2014-11-28 11:53:09
By :
Chaidhanan
$and_chkbox = $keyword>''? ($is_and? ' and ' : ' or ') . " introtext like '%$keyword%' " : '';
สีแดงได้กำหนดค่าหรือยัง ควรมาจาก radio and or
-AND OR ไม่มีค่าอะไรครับ มันเป็นติ๊กไว้เปล่าๆครับ ไม่ส่งค่าอะไรครับ " "
ส่วนบันทัดที่ 8 เปิดใช้ก่อนครับ แล้วเอา $sql มาให้ดูหน่อยครับ
=อันนี้ไม่แน่ใจว่าให้ Echo $sql ใช่ไหมครับ จะได้ออกมา SELECT * from tb_k2_items where catid in ( 2 , 4 , 6 )
ถ้าเชคบอค มันจะค้นได้ครับ
สรุปแบบไม่รู้งงไหมครับ ค่า AND OR ไม่มีผลครับตอนนี้ คิดว่าไม่มี แทค HTML ติ๊กบอคนี้ครับ (ผมใส่ไว้หลอกๆ)
ตอนนี้ที่ได้ออกมาคือ เชคบอคอย่างเดียว ถ้ากดเสิทมันจะออกมาแล้วครับ เช่นเชค 2,4,6 มันก็หาในเบสได้แระครับ
แต่ว่าถ้า ใส่คำค้นหาไป หรือ คำค้นหา+เชคบอค มันจะไม่หาคำค้นหา มันจะหาแค่เชคบอค
หรือว่า and or มีผลด้วยครับ ถ้าผลด้วย AND OR คือ ปุ่มเดียวกันครับ กดอะไรก็ได้คับ ผลเหมือนกันครับ
Date :
2014-11-28 12:11:44
By :
sarut14
ก็ตอนนี้จะใช้แล้วไม่ใช่เหรอครับ
ถ้าไม่ใช้ก็เอาออกไป แล้วจะให้ and หรือ or ครับ
$and_chkbox = $keyword>''? ($is_and? ' and ' : ' or ') . " introtext like '%$keyword%' " : '';
$and_chkbox = $keyword>''? ' and ' . " introtext like '%$keyword%' " : '';
หรือ
$and_chkbox = $keyword>''? ' or ' . " introtext like '%$keyword%' " : '';
เอาส่วนของ ใช้ คีย์เวิร์ดเช็คก่อน
ส่วน paginator เอาไว้ทีหลัง (เอาไว้ก่อน กับ เอาไว้ทีหลัง ทำไมมันความหมายเดียวหว่า 555)
ไปทีละอัน คนสอนก็เมาเป็นนะครับ 5555
Date :
2014-11-28 12:21:42
By :
Chaidhanan
ขอบคุณพี่ Chaidhanan มากครับ ตอนนี้ลองเทสออกมาได้แล้วครับ ส่วน And Or ผมจะเอาไปดัดแปลงอีกรอบครับ
ตอนนี้ทำให้มันแสดงได้เหมือนกัน
จะมีติดตรงจะหน้าตัดเพจที่ต้องการตาม มันแสดงออกมาหมดครับ ยังหาทางสวมโค๊ดไม่เก็ทครับ จากโค๊ดข้างต้น
แล้วจะนำโค๊ดที่พี่ Chaidhanan ไปทบทวนการเขียนคำสั่งอีกรอบครับว่า อะไรคืออะไร เพื่อเอาไปไปทำจุดที่ผมอยากลองศึกษาอีกทีครับ
ขอบพระคุณมากครับ
ปล..การตัดเพจ จาก โค๊ดนี้ต่อยังไงดีครับ
Code (PHP)
<?php
$in_field = implode( " , ", $_POST['cat']);
$db = JFactory::getDbo();
$and_chkbox = $keyword>''? ($is_and? ' and ' : ' or ') . " introtext like '%$keyword%' " : '';
$sql = "SELECT * from tb_k2_items where catid in ( $in_field ) $and_chkbox ";
//echo $sql; exit;
$db->setQuery($sql);
$rs = $db->loadObjectList();
$i = 1;
foreach ($rs as $ro){
$link = 'index.php?option=com_km&view=km&layout=detail&k2id='.$ro->id.'';
$img = '';
echo <<<HTML
<li><img src="images/$img" alt="img"><a href="$link"><span>{$ro->title}</span></a></li><br>
HTML;
}
?>
<<<<HTML >>>>
อันนี้สอบถามความรู้เล็กน้อยนะครับ มันแตกต่างจากการเขียนแบบปกติไงครับ
Date :
2014-11-28 13:52:13
By :
sarut14
<<<<HTML >>>>
อันนี้สอบถามความรู้เล็กน้อยนะครับ มันแตกต่างจากการเขียนแบบปกติไงครับ
ไม่ต้องปวดหัว กับ " หรือ ' ใส่เข้าไปได้เลย โดยไม่ต้องกังวลเรื่อง quote
ถ้าเราใช้ " เช่น "<a href ='window.open(\'url\', \'_black\', \'\' )' >"
แต่ถ้าเราใช้ <<<HTLM
<a href ="window.open('url', '_black', '' )" >
HTML;
ง่ายขึ้นเยอะ อ่านเข้าใจง่ายขึ้น
Date :
2014-11-28 14:03:36
By :
Chaidhanan
ขอบคุณครับ เป็นแบบนี้นี่เอง ตอนนี้งมเรื่องตัดหน้าเพจอยู่ครับ รบกวนด้วยนะครับ ผมลองเขียนโค๊ดแบบข้างต้น
มันหาที่ครอบไม่ลงครับ งงๆ เหอๆ
Date :
2014-11-28 14:27:11
By :
sarut14
Code (PHP)
$strSQL = "select * from account where username like '%".$_REQUEST['search']."%' order by username";
}
//Function WS page >>>>>>>>>>>>>
$Per_Page = 20;
if ( !$Page )
$Page = 1;
$Prev_Page = $Page - 1;
$Next_Page = $Page + 1;
$result = mysql_query( $strSQL );
$Page_start = ( $Per_Page * $Page ) - $Per_Page;
$Num_Rows = mysql_num_rows( $result );
if ( $Num_Rows <= $Per_Page )
$Num_Pages = 1;
elseif ( ( $Num_Rows % $Per_Page ) == 0 )
$Num_Pages = ( $Num_Rows / $Per_Page );
else
$Num_Pages = ( $Num_Rows / $Per_Page ) + 1;
$Num_Pages = ( int ) $Num_Pages;
if ( ( $Page > $Num_Pages ) || ( $Page < 0 ) )
print "จำนวน $Page มากกว่า $Num_Pages";
$strSQL .= " LIMIT $Page_start, $Per_Page";
$result = mysql_query( $strSQL );
$totals = mysql_num_rows($result);
ถามจริงเถอะครับ โค๊ดข้างบนนี้ ไปก๊อปมาจากไหนครับ
ผมว่าโค๊ดมัน เทอะทะ อะครับ ดูแค่วิธีหา $Num_Pages ทำไมเยอะขนาดนั้น
ลองดูแบบข้างล่างนะครับ
Code (PHP)
$in_field = implode( " , ", $_POST['cat']);
$db = JFactory::getDbo();
$and_chkbox = $keyword>''? ($is_and? ' and ' : ' or ') . " introtext like '%$keyword%' " : '';
$sql = "SELECT * from tb_k2_items where catid in ( $in_field ) $and_chkbox ";
//echo $sql; exit;
$db->setQuery($sql);
$rs = $db->loadObjectList();
//Function WS page >>>>>>>>>>>>>
$Page = JRequest::getVar('keyword');
if ( !$Page ) $Page = 1;
$Prev_Page = $Page - 1;
$Next_Page = $Page + 1;
$Per_Page = 20;
$Num_Rows = count($rs);
$Num_Pages = ceil($Num_Rows / $Per_Page);
$Page_start = ($Page-1) * $Per_Page;
///////////////////////////////////////////////////////////////
$i=$Page_start; //$i = 1;
for( $i; $i<$Per_Page&&$i<$Num_Rows; $i++){
$ro=$rs[$i];
$link = 'index.php?option=com_km&view=km&layout=detail&k2id='.$ro->id.'';
$img = '';
echo <<<HTML
<li><img src="images/$img" alt="img"><a href="$link"><span>{$ro->title}</span></a></li><br>
HTML;
}
คงไปต่อได้แล้วนะครับ
ประวัติการแก้ไข 2014-11-28 15:45:49
Date :
2014-11-28 15:44:46
By :
Chaidhanan
ข้างบน เป็นโค๊ดเอามาจาก หนังสือครับ ผมเอามาแกะจนมันเทอะทะไปเองครับ ได้แล้วคับผม เอาไปตัดหน้าต่อได้และครับ
ตอนนี้ลองใส่ div ดูครับ พอดีฟ้อนกับแถวมันชิดกัน
ถามพี่นิดนึงครับ ตอนนี้เอาโค๊ดพี่ไปลองใส่ DIV ดู ตามนี้รูปมันขึ้นหน้าขาวครับ
Code (PHP)
echo " <div class="row-check2f"><input type='checkbox' name='cat[]' value='{$item->id}'
onclick='check_cat( {$item->id} )'><span>{$item->NAME}</span></div>";
foreach ($rs as $item2){
echo " <div class="row-check2f subcheck2f"><input type='checkbox' name='cat[]' class='cat_{$item->id}'
value='{$item2->id}' >&<span>{$item2->NAME}</span></div>";
ถ้าใส่ไว้ข้างนอกมันจะ DIV ไปทับตัวอื่นครับ ถามการแทรกเป็นไกด์หน่อยนะครับ เอาแค่จุดนี้จุดเดียวสอนเป็นไกด์ก็พอครับ
ถ้าเจอกรณี Echo แบบนี้ใส่ div แทรกไงครับผม ขอบคุณมากครับ
ประวัติการแก้ไข 2014-11-28 16:30:02 2014-11-28 16:33:53
Date :
2014-11-28 16:27:12
By :
sarut14
เพิ่งจะพูดเรื่อง " ' ไปหยกๆ 5555 เช็ค quote ดูสิครับ
Date :
2014-11-28 16:34:15
By :
Chaidhanan
ผมได้แระครับ โดยการเขียนแบบนี้ครับ
Code (PHP)
foreach ($this->FullSearchListLv1 as $item){
$db = JFactory::getDbo();
$sql = "SELECT `id`, `NAME`, `parent` FROM tb_k2_categories WHERE id >0 AND parent ='$item->id' ";
$db->setQuery($sql);
$rs = $db->loadObjectList(); ?>
<div class="row-check2f">
<input type="checkbox" name="cat[]" value="<?php echo $item->id ?>" onclick="check_cat( <?php echo $item->id ?> )">
<span><?php echo $item->NAME ?></span>
</div>
<?php
foreach ($rs as $item2){
?>
<div class="row-check2f subcheck2f">
<input type="checkbox" name="cat[]" class="cat_<?php echo $item->id ?>" value="<?php echo $item2->id ?>">
<span><?php echo $item2->NAME ?></span>
</div>
<?php
}
}
?>
<br>
<br>
<button name="bt" type="submit" class="btn-search2f" value="search-adv">ค้นหา</button>
</form>
</div>
Date :
2014-11-28 17:03:14
By :
sarut14
Load balance : Server 00