Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

ถามตอบ ปัญหาการพัฒนา Extension ไม่ว่าจะเป็น Module plugin Component หรือ แม้แต่ template การปรับแต่งโค้ด Joomla ต่างๆ ทุกเวอร์ชั่น 1.5 2.5 หรือ 3.x

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

Parichat
PHP VIP Members
PHP VIP Members
โพสต์: 4859
ลงทะเบียนเมื่อ: 08/01/2018 10:03 am

Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

ทำ Drop Down ในโมดูลของหน้าผู้ดูแลระบบ
ตอนนี้ทำแล้วแต่ยังเป็น Textbox อยู่อีก
ตอนนี้มีสร้างโฟลเดอร์ fields และสร้างไฟล์ php มี โค้ดในไฟล์มี

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

JFormHelper::loadFieldClass('list');

class JFieldMainForms extends JFieldList {

        protected $type = 'MainForms';

        public function getOptions() {
                $db = Joomla\CMS\Factory::getDbo();
                $query = $db->getQuery(true)
                        ->select('id AS value, title AS text')
                        ->from('#__mdrtp_form_steps');
                $db->setQuery($query);
                $arr_options = $db->loadObjectList();

                return array_merge(parent::getOptions(), $arr_options);
        }

}
โค้ดในไฟล์ XML

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

<field 
    name="stap_form" 
    type="mainforms" 
    label="MOD_MDRTP_RECENT_STEP_FORM">
   <option value="">Add Step Form</option>
</field>
ass3.png
ass3.png (2.26 KiB) Viewed 1864 times
Live Simply, Laugh Often, Love Deeply.....
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21910
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

อาจจะต้องบอกที่อยู่ของโฟลเดอร์ที่เก็บ Fields ให้มันรู้ด้วย โดยใช้ addfieldpath

ตัวอย่างจาก https://docs.joomla.org/Creating_a_cust ... field_type
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
Parichat
PHP VIP Members
PHP VIP Members
โพสต์: 4859
ลงทะเบียนเมื่อ: 08/01/2018 10:03 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

tsukasaz เขียน:อาจจะต้องบอกที่อยู่ของโฟลเดอร์ที่เก็บ Fields ให้มันรู้ด้วย โดยใช้ addfieldpath

ตัวอย่างจาก https://docs.joomla.org/Creating_a_cust ... field_type
พอใส่
addfieldpath="/modules/mod_mdrtp_recent/fields"
ลงไปแล้วมันเพี้ยงหมดเลยคาบ
แนบไฟล์
ass4.png
Live Simply, Laugh Often, Love Deeply.....
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21910
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

ใส่ที่ไหนครับ
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
Parichat
PHP VIP Members
PHP VIP Members
โพสต์: 4859
ลงทะเบียนเมื่อ: 08/01/2018 10:03 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

tsukasaz เขียน:ใส่ที่ไหนครับ
ใส่ในแท็ก <fieldset >

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

<fieldset  name="basic" addfieldpath="/modules/mod_mdrtp_recent/fields">
//.............
</fieldset>
Live Simply, Laugh Often, Love Deeply.....
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21910
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

มันน่าจะเข้าไปในโฟลเดอร์ fields แล้ว เช็คโค้ดว่าเขียนอะไรผิดหรือเปล่า
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
Parichat
PHP VIP Members
PHP VIP Members
โพสต์: 4859
ลงทะเบียนเมื่อ: 08/01/2018 10:03 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

tsukasaz เขียน:มันน่าจะเข้าไปในโฟลเดอร์ fields แล้ว เช็คโค้ดว่าเขียนอะไรผิดหรือเปล่า
ลองแก้แล้วแต่ Error
Call to protected method JFormFieldList::getOptions() from context 'Joomla\CMS\Form\FormHelper'
Live Simply, Laugh Often, Love Deeply.....
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21910
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

เขียนโค้ดว่าอะไรครับ
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
Parichat
PHP VIP Members
PHP VIP Members
โพสต์: 4859
ลงทะเบียนเมื่อ: 08/01/2018 10:03 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

tsukasaz เขียน:เขียนโค้ดว่าอะไรครับ
ในไฟล์.php ที่อยู่ในโฟลเดอร์ fields

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

JFormHelper::addFieldPath(JPATH_COMPONENT . '/fields');
$cities = JFormHelper::loadFieldType('list', false);
$cityOptions=$cities->getOptions();
ในไฟล์ .xml

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

<fieldset  name="basic" addfieldpath="/modules/mod_mdrtp_recent/fields">
//.............
</fieldset>
Live Simply, Laugh Often, Love Deeply.....
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21910
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: Q - ทำ Drop Down ในหน้าผู้ดูแลระบบของโมดูล

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

โค้ดข้างบนเป็นการเรียกตัว Field แบบใช้ php ส่วนอันล่าง เป็นการเรียกใช้แบบ xml เลือกใช้อย่างใดอย่างหนึ่ง

เอาแบบ xml อย่างเดียวพอ
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

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

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