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

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

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

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

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

โพสต์ที่ยังไม่ได้อ่าน โดย Ittichai_chupol »

- สำหรับผู่ที่กำลังศึกษา พัฒนา เว็บบอร์ด 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) Viewed 2896 times
ขอให้วันนี้เป็นวันที่ดี
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41230
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

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

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ถ้าเขียนแบบ HTML + PHP ธรรามดาตามนี้
ตัวอย่างโค้ด

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

<?php
// ตรวจสอบว่ามีข้อมูลที่ถูกส่งมาหรือไม่
$selectedValues = [];
if (isset($_POST['submit'])) {
    // รับค่าที่เลือก
    $selectedValues = $_POST['options'] ?? [];
}
?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Multi Select Form Example</title>
</head>
<body>
    <form method="post">
        <label for="options">Select options:</label>
        <select name="options[]" id="options" multiple>
            <option value="option1" <?php echo in_array("option1", $selectedValues) ? 'selected' : ''; ?>>Option 1</option>
            <option value="option2" <?php echo in_array("option2", $selectedValues) ? 'selected' : ''; ?>>Option 2</option>
            <option value="option3" <?php echo in_array("option3", $selectedValues) ? 'selected' : ''; ?>>Option 3</option>
            <!-- เพิ่มตัวเลือกเพิ่มเติมตามที่ต้องการ -->
        </select>
        <br>
        <input type="submit" name="submit" value="Submit">
    </form>

    <?php if (!empty($selectedValues)) : ?>
        <h2>Selected Values</h2>
        <ul>
            <?php foreach ($selectedValues as $value) : ?>
                <li><?php echo htmlspecialchars($value); ?></li>
            <?php endforeach; ?>
        </ul>
    <?php endif; ?>
</body>
</html>
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

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

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 76