我想在 HTML 表中显示 Moodle 数据库中的数据,但对于每条记录都会显示单独的表:
代码:
$rec=$DB->get_records_sql('SELECT * FROM `mdl_schedules`');
$table = new html_table();
$table->head = array('Date','Time', 'A' , 'B', 'C','D', 'E', 'F');
foreach ($rec as $records) {
$id = $records->id;
$scheduledatet = $records->scheduledate;
$scheduletime = $records->scheduletime;
$session = $records->s;
$venue = $records->v;
$trainer = $records->t;
$category = $records->c;
$course = $records->course;
$link = $records->link;
$table->data = array(array($scheduledatet, $scheduletime, $a,$b,$c,$d,$e,'<a href="'.$link.'">View</a>'));
echo html_writer::table($table);
}
Run Code Online (Sandbox Code Playgroud)
任何参考或帮助将不胜感激。
我想检查required_param('LType',PARAM_ALPHA)是否已设置?我怎样才能做到这一点?我使用这个,但它不能正常工作:
if(!isset(required_param('LType',PARAM_ALPHA)))
{echo "salaam";exit;}
Run Code Online (Sandbox Code Playgroud) 我有一个名为 xyz.com 的门户网站和一个名为 yzx.com 的 Moodle 网站。我在两个网站上都有一些用户,它们具有相同的用户名和密码。我想要的是当用户登录名为 xyz.com 的非 Moodle 站点时,他应该自动登录到 yzx.com 即 Moodle 站点上的同一用户。
请帮助我如何向moodle发出curl或API请求,以便它在当前浏览器上自动登录。Moodle 有函数 user_login($username,$pass) 但不知道如何使用它,因为我是 Moodle 的新手。
我正在研究Moodle 2.2.1,并使用某些查询创建了dynamic.csv文件.我在我的主目录中创建了一个具有写权限的/ tmp /目录,并使用我通过代码创建.csv文件的文件函数.
一切正常,fopen(),fwrite()函数和csv文件每次动态创建.我已经为这段代码的用户保存了这些文件供下载.
<a href='/moodle/tmp/'".$filename."'> Download </a>
Run Code Online (Sandbox Code Playgroud)
在.htaccess中使用此行的N,文件可以下载到任何人的机器上.
AddType application/octet-stream .csv
Run Code Online (Sandbox Code Playgroud)
但问题是,每次加载页面时,都会使用不同的时间戳创建相同的.csv文件.基本上我在/ tmp /目录中获得了许多具有不同时间戳的重复文件.
有没有办法在该页面的每次加载时,该文件夹中文件的所有现有实例都被删除,并且可以下载新批文件.这样我就没有重复文件,只有每个文件的一个实例.
如果有人可以帮助我,我真的很感激.
谢谢
编辑:如果我创建和编写.csv文件的代码是这样,那么我应该在一小时之前删除带有时间戳的旧文件以及如何保留最新文件.
foreach($uniquenames as $uniquename)
{
$data = "Header1,Header2,Header3,Header4,Header5\n";
$filename = $uniquename.'_'.time().'.csv';
$writepath = $filepath.$filename;
$fh = fopen($writepath, 'w');
$result = $functions->getFiless();
foreach($result as $activity)
{
if($uniquename == $activity->quiz)
{
$data .= .$somedata.",".$foreachheader."\n";
}
else
{
}
}
fwrite($fh, $data);
fclose($fh);
echo "<p>".$uniquename . "<div class='assessment-reportlink'><a href='/moodle/tmp/".$filename."'> Download </a></p></div>";
Run Code Online (Sandbox Code Playgroud)
}
我试图通过查询获得学生的分数和成绩,但我无法计算出联接.这是非常复杂的数据库.有没有人以前做过?
下面的查询(由我自己修改的表)适用于某些学生,但不适用于其他学生,因此我需要一个具有原始表结构的正确的.
谢谢
我的错误查询
SELECT mdl_grade_items.id AS ItemID,
mdl_course.shortname AS CourseShortname,
mdl_grade_items.itemname AS ItemName,
mdl_grade_items.grademax AS ItemGradeMax,
mdl_grade_items.aggregationcoef AS ItemAggregation,
mdl_grade_grades.finalgrade AS FinalGrade,
mdl_user.username AS StudentID,
mdl_user.id
FROM mdl_grade_items
INNER JOIN mdl_grade_grades
ON mdl_grade_items.id = mdl_grade_grades.itemid
INNER JOIN mdl_role_assignments
ON mdl_grade_grades.userid = mdl_role_assignments.userid
AND mdl_grade_items.courseid = mdl_role_assignments.mdlcourseid
INNER JOIN mdl_course
ON mdl_course.id = mdl_grade_items.courseid
INNER JOIN mdl_user
ON mdl_user.id = mdl_role_assignments.userid
WHERE mdl_grade_items.courseid = '2864'
AND mdl_user.username = '123456789'
Run Code Online (Sandbox Code Playgroud) 我是moodle的新手.我正在尝试使用自己的PHP脚本查询moodle数据库.我正在使用数据操作API,但我似乎无法获取任何东西.我应该采取什么步骤来实现这一目标.我在这里和那里看到了许多指南,我应该在moodle中包含config.php文件,以便访问$ DB全局变量,从而访问DML API的功能.以下是我的代码:
<?php
require '../config.php';
global $DB;
$user= $DB->get_record_sql('SELECT * FROM {mdl_user} WHERE id=?', array(4));
echo mysql_num_rows($user);
?>
Run Code Online (Sandbox Code Playgroud)
当我尝试在TextMate编辑器上运行它时出现以下错误:
PHP Warning: require(../config.php): failed to open stream: No such file or directory in /Applications/MAMP/htdocs/moodle24/sbs_android_app/database_manipulation.php on line 2
PHP Fatal error: require(): Failed opening required '../config.php' (include_path='.:') in /Applications/MAMP/htdocs/moodle24/sbs_android_app/database_manipulation.php on line 2
Run Code Online (Sandbox Code Playgroud)
我将非常感谢帮助...谢谢.
当我尝试从互联网上输入我的moodle时,我看到以下消息:
致命错误:$ CFG-> dataroot配置不正确,目录不存在或无法访问!退出.
我不知道如何解决它.我做了什么?
$CFG->wwwroot = 'localhost/moodle-2.3.11';// I should put subgominio.com/moodle-2.3.11/
$CFG->dataroot = 'C:\\xampp\\moodledata';// I don't have idea what I have to put here, because I put in the root.
$CFG->admin = 'admin'; // I don't have any idea which information put here
Run Code Online (Sandbox Code Playgroud)
bookstore.mainstreetschoolhouseinc.com我看到了我的文件,打开文件夹moodle-2.3.11之后,我看到了这条消息:致命错误:$ CFG-> dataroot配置不正确,目录不存在或无法访问!退出.
我想在块/ plugin_name/cron.php创建的有层次的层次结构中运行我的cron脚本.请帮助我如何创建和调用此cron脚本以在常规层次结构中运行.
SCORM 1.2和SCORM 2004之间的核心区别是什么?
我必须将我的电子学习课程发布到SCORM,然后上传到moodle.但有两个版本的SCORM 1.2和2004.我很困惑哪一个应该用于上传moodle课程.
我正在尝试使用 EBS 在 AWS EBS 上设置 Moodle 3.1 平台。我已经设置了环境,上传了正确部署的moodle zip 包。我运行了网络安装,连接到数据库,但我在先决条件检查中遇到了以下错误:
该邮编PHP扩展现在需要由Moodle的,信息-ZIP二进制文件或PclZip库不再使用。
我不太确定如何:
我浏览了 aws 和moodle 文档,但它们都让您通过 ssh 连接到 EC2 实例。我已经用腻子登录到我的其他 EC2 实例(不是 EBS),但我不确定我需要如何/哪个实例来纠正这个错误。我也认为 EBS 的配置设置 - Zlib 输出压缩:On/True 可以解决问题,但这并没有奏效。
还有什么我可以尝试的吗?