我是新接触moodle的。我正在尝试使用自己的PHP脚本查询moodle数据库。我正在使用数据操作API,但似乎无法获取任何东西。我应该采取哪些步骤来实现这一点。为了访问$DB全局变量,从而访问DML的函数,我在各处都看到了一些指导原则,即我应该在moodle中包含config.php文件。以下是我的代码:
<?php
require '../config.php';
global $DB;
$user= $DB->get_record_sql('SELECT * FROM {mdl_user} WHERE id=?', array(4));
echo mysql_num_rows($user);
?>当我尝试在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我会感谢help...Thanks的。
发布于 2013-06-19 16:42:02
此错误:
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意味着脚本找不到名为config.php的文件。../config.php表示脚本将尝试打开脚本父目录中名为config.php的文件。确保您的脚本确实位于该位置。如果不是,我建议将../config.php更改为./config.php,并将脚本移到与config.php相同的目录中。
因为您的脚本找不到config.php,所以它无法连接到数据库(config.php应该存储凭据、config.php等)。
发布于 2013-11-07 19:33:18
我想你给错了方向。请确保您提供的路径是正确的,如下所示
require_once('path_from_rootdir to config.php');注意: path_from_rootdir to config.php是config.php的路径,每个目录之间的路径用'/‘分隔。
发布于 2014-01-20 20:41:34
Moodle的四行代码有两个问题:
require '../config.php';这里的代码收到错误- "PHP警告:需要(../ config.php ):无法打开流“,因为config.php正在父目录中查找&文件不在那里。请检查路径并放入config.php的正确路径。
$user= $DB->get_record_sql('SELECT * FROM {mdl_user} WHERE id=?', array(4));使用Moodle DML API时,不得在{}内的表名前添加表前缀(默认情况下为mdl_)。因此,必须只有{user}来代替{mdl_user}。
https://stackoverflow.com/questions/17186483
复制相似问题