Wednesday, March 19, 2014

Membuat Form

telah diujicoba di Moodle 2.4.x Bagaimana code untuk membuat form di moodle? Code untuk membuat form terdiri dari dua bagian. Berikut ini contoh code untuk membuat form dengan dua data isian yaitu: nama folder dan url. Pertama, mendefinisikan ragam isian form
global $CFG,$DB,$OUTPUT; // moodleform didefinisikan di formslib.php require_once("$CFG->libdir/formslib.php"); class cms_repository_form extends moodleform { // menambah isian pada form public function definition() { $mform = $this->_form; // pastikan ada underscore $mform->addElement('text', 'folder_name', get_string('folder_name')); // menambah isian $mform->setType('folder_name', PARAM_NOTAGS); // jenis isian $mform->addElement('text', ‘folder_url’, get_string(‘folder_url’)); // menambah isian pada form $mform->setType(‘folder_url’, PARAM_NOTAGS); // jenis isian $mform->setDefault(‘folder_url’, 'http://'); // nilai default $this->add_action_buttons(true, get_string('add')); } }














Kedua, menampilkan dan pengaturan form
// inisiasi form $mform = new cms_repository_form(); $mform->set_data($mform); // pengolahan dan tampilan form diatur di sini if ($mform->is_cancelled()) { // bila ada tombol 'cancel' dan bila operasi dibatalkan $returnurl="$CFG->wwwroot.index.php?action=manage"; redirect($returnurl); } else if ($fromform = $mform->get_data()) { // mengolah data. $mform->get_data() mengirim data yang dimasukkan lewat form. $name = $formform->fieldname['folder_name']; $url = $formform->fieldname[‘folder_url’]; echo $url; } else { // bila form disubmit tapi datanya tidak tepat, form perlu ditampilkan ulang // atau, pertama kali menampilkan form. // tetapkan data default (bila ada) // menampilkan form $OUTPUT->box_start('generalbox', 'notice'); $mform->display(); $OUTPUT->box_end(); }





















Sumber: moodle docs: Form API dan Form definition
notes: bila artikel ini bermanfaat bagi Saudara, kami harap Saudara sedia like Facebook Fanpage kami: Masjidillah. Like dan dukungan Saudara sangat bermakna bagi kami. Terimakasih



1 comment: