i want to pass the options as values : here is my code.
JavaScript
x
$master_id=array();
$ret1="select Id from m_tl_mastercourse";
$result1=get_records_sql($ret1,$limitfrom='', $limitnum='');
foreach($result1 as $resu){
$master_id[ ]=$resu->Id;
}
$mform->addElement('select', 'master_id', get_string('selectcourse'), $master_id);
If i use this means it is looking like below :
JavaScript
<select id="id_master_id" name="master_id">
<option value="0">php01</option>
<option value="1">ios01</option>
<option value="2">and01</option>
<option value="3">java01</option>
<option value="4">python01</option>
<option value="5">yii2</option>
what i want is the exact value will be pass in to the option values. how to get that
Advertisement
Answer
You can simplify this with the get records menu functions.
https://docs.moodle.org/dev/Data_manipulation_API#get_records_menu
JavaScript
$options = $DB->get_records_menu('m_tl_mastercourse', [], 'id', 'id, name');
$mform->addElement('select', 'master_id', get_string('selectcourse'), $options);
To pass the selected value, you need to pass the value to the form.
https://docs.moodle.org/dev/Form_API#Usage
JavaScript
$formdata = new stdClass();
$formdata->master_id = 99
$mform = new edit_form();
$mform->set_data($formdata);
$mform->display();