标签: moodle

如何从moodle数据库中输出HTML表格中的记录?

我想在 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)

任何参考或帮助将不胜感激。

moodle

2
推荐指数
1
解决办法
4334
查看次数

如何检查 Moodle 中是否设置了 required_pa​​ram?

我想检查required_param('LType',PARAM_ALPHA)是否已设置?我怎样才能做到这一点?我使用这个,但它不能正常工作:

 if(!isset(required_param('LType',PARAM_ALPHA)))
     {echo "salaam";exit;}
Run Code Online (Sandbox Code Playgroud)

php moodle

2
推荐指数
1
解决办法
2585
查看次数

MOODLE中如何让用户自动登录

我有一个名为 xyz.com 的门户网站和一个名为 yzx.com 的 Moodle 网站。我在两个网站上都有一些用户,它们具有相同的用户名和密码。我想要的是当用户登录名为 xyz.com 的非 Moodle 站点时,他应该自动登录到 yzx.com 即 Moodle 站点上的同一用户。

请帮助我如何向moodle发出curl或API请求,以便它在当前浏览器上自动登录。Moodle 有函数 user_login($username,$pass) 但不知道如何使用它,因为我是 Moodle 的新手。

php api curl moodle moodle-api

2
推荐指数
1
解决办法
5364
查看次数

下载后删除文件 - PHP

我正在研究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)

}

php fopen moodle file

1
推荐指数
1
解决办法
7060
查看次数

查询moodle中学生的分数和成绩

我试图通过查询获得学生的分数和成绩,但我无法计算出联接.这是非常复杂的数据库.有没有人以前做过?

下面的查询(由我自己修改的表)适用于某些学生,但不适用于其他学生,因此我需要一个具有原始表结构的正确的.

谢谢

我的错误查询

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)

mysql moodle

1
推荐指数
1
解决办法
3966
查看次数

查询moodle中的moodle数据库

我是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)

我将非常感谢帮助...谢谢.

php moodle

1
推荐指数
1
解决办法
3148
查看次数

从localhost移动到托管

当我尝试从互联网上输入我的moodle时,我看到以下消息:

致命错误:$ CFG-> dataroot配置不正确,目录不存在或无法访问!退出.

我不知道如何解决它.我做了什么?

  1. 我进入了我的filizilla.
  2. 我的域文件夹是空的,所以我把我的moodle_data文件夹和moodle-2.3.11文件夹(我试图把moodle_data文件夹放在我看到我所有文件夹的根目录中)
  3. 我在托管中创建了一个数据库.
  4. 我更新了我的config.php,但我不确定我必须放在这一行:
$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)
  1. 当我打开这个链接时,bookstore.mainstreetschoolhouseinc.com我看到了我的文件,打开文件夹moodle-2.3.11之后,我看到了这条消息:

致命错误:$ CFG-> dataroot配置不正确,目录不存在或无法访问!退出.

hosting moodle localhost

1
推荐指数
1
解决办法
2万
查看次数

如何通过插件在moodle中设置cron脚本

我想在块/ plugin_name/cron.php创建的有层次的层次结构中运行我的cron脚本.请帮助我如何创建和调用此cron脚本以在常规层次结构中运行.

php cron moodle

1
推荐指数
1
解决办法
2780
查看次数

SCORM 1.2和SCORM 2004之间的区别

SCORM 1.2和SCORM 2004之间的核心区别是什么?

我必须将我的电子学习课程发布到SCORM,然后上传到moodle.但有两个版本的SCORM 1.2和2004.我很困惑哪一个应该用于上传moodle课程.

moodle scorm scorm1.2 scorm2004

1
推荐指数
1
解决办法
886
查看次数

在 AWS EC2 上启用 Zip PHP 扩展

我正在尝试使用 EBS 在 AWS EBS 上设置 Moodle 3.1 平台。我已经设置了环境,上传了正确部署的moodle zip 包。我运行了网络安装,连接到数据库,但我在先决条件检查中遇到了以下错误

邮编PHP扩展现在需要由Moodle的,信息-ZIP二进制文件或PclZip库不再使用。

我不太确定如何:

  1. 登录 EBS 环境创建的 EC2 实例
  2. 一旦我在那里,如何安装 php 扩展

我浏览了 aws 和moodle 文档,但它们都让您通过 ssh 连接到 EC2 实例。我已经用腻子登录到我的其他 EC2 实例(不是 EBS),但我不确定我需要如何/哪个实例来纠正这个错误。我也认为 EBS 的配置设置 - Zlib 输出压缩:On/True 可以解决问题,但这并没有奏效。

还有什么我可以尝试的吗?

php zip moodle amazon-ec2 amazon-web-services

1
推荐指数
1
解决办法
6105
查看次数