วิธีการสร้าง multiple select แบบระบบุว่าเลือกข้อมูลชุดไหนไว้ ใน phpbb

PHP Knowledge เป็น บอร์ดรวามความรู้ php เน้นบทความ แนวทางการเขียนโปรแกรม บันทึกกันลืม เพื่อให้สมาชิกได้เขียนความรู้ที่ตัวเองมีให้สมาชิกท่านอื่นๆ ได้ เข้ามาอ่าน และ ไว้อ่านเองกันลืมด้วย

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
Ittichai_chupol
PHP VIP Members
PHP VIP Members
โพสต์: 2538
ลงทะเบียนเมื่อ: 19/09/2018 10:33 am

วิธีการสร้าง multiple select แบบระบบุว่าเลือกข้อมูลชุดไหนไว้ ใน phpbb

โพสต์โดย Ittichai_chupol » 26/01/2019 4:31 pm

- สำหรับผู่ที่กำลังศึกษา พัฒนา เว็บบอร์ด phpbbบางคนอาจจะจะอยากลองสร้างส่วนที่มีไว้สำหรับ เลือก ข้อข้อมูลพร้อมๆกันหลายข้อมูลเพื่อนำไป บันทึก หรือ เปลี่ยนแปลงข้อมูลก็ตาม โดยข้อมูลที่จะนำมาเพื่อเป็นตัวเลือกนั้นก็มาจากฐานข้อมูล เช่นกัน
- ซึ่งผมมีวิธีการง่ายๆที่ไว้ใช้งานการเลือกข้อมุลเหล่านี้ ดังตัวอย่างอย่างนี่้

ขั้นตอนการพัฒนา

1.สร้างไฟล์ html ซึ้งเป็นไฟล์ที่ใช้สำหรับแสดงผลขึ้นมาก่อน

โค้ด: เลือกทั้งหมด


 <dl>
            <dt><label for="forum">{L_LOOK_UP_FORUM}{L_COLON}</label></dt>
            <dd>    <select name="forum_id[]" multiple>
                    <!-- BEGIN block -->
                    <option class="{block.CLASS}" value="{block.FORUM_ID}">{block.FORUM_NAME}</option>
                    <!-- END block -->
                </select>
            </dd>
        </dl>


2.ไฟล์ php ซึ่งเป็นไฟล์ที่ไว้ใช้สำหรับส่วนการทำงาน

โค้ด: เลือกทั้งหมด


 //ส่วนที่จะแสดงผลในส่วนข้อฒูลที่ยังได้ทำการเลือกมาใช้งาน
     $sql_array2 = array(
            'SELECT' => 'd.*, f.* ',
            'FROM' => array(
                FORUMS_TABLE => 'f',
            ),
        );
        $sql_array2['LEFT_JOIN'] = array();
        $sql_array2['LEFT_JOIN'][] = array('FROM' => array($this->table_prefix . 'favorite_data' => 'd'), 'ON' => 'd.forum_id = f.forum_id');
        $sql2 = $db->sql_build_query('SELECT', $sql_array2);
        // echo $sql2;
        $result2 = $db->sql_query($sql2);
        while ($row2 = $db->sql_fetchrow($result2)) {
            if ($row2['favorite_id'] == null) {
                $template->assign_block_vars('block', array(
                    'CLASS' => '',
                    'FORUM_NAME' => $row2['forum_name'],
                    'FORUM_ID' => $row2['forum_id'],
                ));
            } else {
                $template->assign_block_vars('block', array(
                    'CLASS' => 'panel',
                    'FORUM_NAME' => $row2['forum_name'],
                    'FORUM_ID' => $row2['forum_id'],
                ));
            }
        }


ผลลัพที่ได้

04-26.png
04-26.png (18.78 KiB) เปิดดู 1380 ครั้ง

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 2 และ บุคคลทั่วไป 0 ท่าน