我需要获取" mForm"的参数值。 moodle形式,不知道如何。
我应该添加静态字段" Date Created"到课程的编辑部分,而不是显示为Unix时间戳。
对此有以下结论:
$fecha_creacion = date('m/d/Y', xxxxxxxxx);
$mform->addElement('static', 'desc' , 'Fecha de Creación');
$mform->setDefault('desc', $fecha_creacion);
他" xxxxxxxxx"是" mdl_couse"中从BD获得的整数值。表格(' timecreated')。
因此我需要获取整数值,该值与传入的参数相同:
$mform->addElement('static', 'timecreated' , 'Fecha de Creación');
我是moodle的新手。 非常感谢你。
答案 0 :(得分:1)
Moodle使用HTML_QuickForm,因此您应该可以查看http://pear.php.net/package/HTML_QuickForm/docs/latest/上的文档。
如果我理解正确,在这种情况下你需要的东西是:
$mform->getElementValue('timecreated');
希望这有帮助。
答案 1 :(得分:1)
您可以将参数传递给表单
在edit.php文件中
// Get the course record that you want.
$course = $DB->get_record('course', array('id' => $id));
// Pass the time created value in an array.
$customdata = array('timecreated' => $course->timecreated);
$form = new edit_form(null, $customdata);
然后在你的edit_form.php文件中
class edit_form extends moodleform {
public function definition() {
$mform =& $this->_form;
// Copy the timecreated value.
$timecreated = $this->_customdata['timecreated'];
// Pass timecreated as the 4th parameter - userdate() will display the date in the users locale.
// You should also use get_string() to display the label in the users language.
$mform->addElement('static', 'timecreated', get_string('timecreated', 'yourpluginname'), userdate($timecreated));
答案 2 :(得分:0)
<强>解决方案:强>
$customdata = array('timecreated' => $course->timecreated);
$fecha_c = $customdata['timecreated'];
或
$fecha_c = $course->timecreated;
获得时间创造值
$fecha_creacion = date('d/m/Y',$fecha_creacion);
$mform->addElement('static', 'desc' , 'Fecha de Creación');
$mform->setDefault('desc', $fecha_creacion);
仅在课程版本中:(不适用于创建课程)
if (!empty($course->id)) {
$fecha_c = $course->timecreated;
$fecha_creacion = date('d/m/Y',$fecha_creacion);
$mform->addElement('static', 'desc' , 'Fecha de Creación');
$mform->setDefault('desc', $fecha_creacion);
}
感谢您的帮助!!