พัฒนา phpBB 3.1 : ตัวอย่างการเขียนค้นหาด้วย text field + List box + cancel

Post a reply


In an effort to prevent automatic submissions, we require that you complete the following challenge.
Smilies
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: พัฒนา phpBB 3.1 : ตัวอย่างการเขียนค้นหาด้วย text field + List box + cancel

พัฒนา phpBB 3.1 : ตัวอย่างการเขียนค้นหาด้วย text field + List box + cancel

by thatsawan » 03/11/2015 12:43 am

Code: Select all

$search = request_var('search_word', '', true); // รับค่าจาก text ธรรมดากรอกเข้าไปเอง
        $search_status = request_var('search_status', 'ALL', true); // รับค่าจาก List box
        $search_position = request_var('search_position', 'ALL', true);  // รับค่าจาก List box
        $cancel = request_var('cancel', '', true);  // การสร้างเมนู cancel
        $start = request_var('start', 0); // ตัวแปรที่จะเอาไว้เเบ่งหน้า
        
         $bottum_search = request_var('search', '', true); // รับค่าจาก button search
        
เช็ค if เพิ่มใส่ sql

Code: Select all

  $a_search[] = 1 . ' ';
        if (!empty($bottum_search)) {  //เช็คว่ามีการค้นหาหรือไม
            if (!empty($search)) {
                $a_search[] = " (ads_name LIKE '%" . $db->sql_escape($search) . "%' OR ADS_LINK LIKE '%" . $db->sql_escape($search) . "%' OR ads_detail LIKE '%" . $db->sql_escape($search) . "%' ) ";
            }
            if (($search_status != 'ALL')) { // อันนี้เช็คว่า
                $a_search[] = " ads_status = " . (int) ($search_status) . " ";
            }
            if (($search_position != 'ALL')) {
                $a_search[] = " ads_position = '" . $db->sql_escape($search_position) . "' ";
            }
        }
2015-11-03_0-45-33.png
2015-11-03_0-45-33.png (12.96 KiB) Viewed 516 times

Code: Select all

Array
(
    [0] => 1 
    [1] =>  (ads_name LIKE '%กลาง%' OR ADS_LINK LIKE '%กลาง%' OR ads_detail LIKE '%กลาง%' ) 
)
2015-11-03_0-46-19.png
2015-11-03_0-46-19.png (11.41 KiB) Viewed 516 times

Code: Select all

Array
(
    [0] => 1 
    [1] =>  (ads_name LIKE '%กลาง%' OR ADS_LINK LIKE '%กลาง%' OR ads_detail LIKE '%กลาง%' ) 
    [2] =>  ads_position = 'c' 
)
2015-11-03_0-47-38.png
2015-11-03_0-47-38.png (12.73 KiB) Viewed 516 times

Code: Select all

Array
(
    [0] => 1 
    [1] =>  (ads_name LIKE '%กลาง%' OR ADS_LINK LIKE '%กลาง%' OR ads_detail LIKE '%กลาง%' ) 
    [2] =>  ads_status = 1 
    [3] =>  ads_position = 'c' 
) 

Code: Select all

  $sql_ary = array(
            'SELECT' => '*',
            'FROM' => array(
                $table_prefix . 'm_slide_ads' => 'f',
            ),
            'WHERE' => implode('AND', $a_search),
            'ORDER_BY' => 'ads_name'
        );
        $sql = $db->sql_build_query('SELECT', $sql_ary);

        $per_page = request_var('list', $config['topics_per_page']); //$config['topics_per_page']
        $result = $db->sql_query_limit($sql, $per_page, $start);
        while ($row = $db->sql_fetchrow($result)) {
            $template->assign_block_vars('links', array(
               //...
            ));
        } 

Top