我开发了一个查询来列出带有复选框的字段,以供用户选择要包含在查询结果中的字段。它正在模板文件中工作(基于page.php)。然后,我决定将将在其他模板中使用的逻辑移至db-functions.php文件。现在,我得到
致命错误:在/ home / ...中的null上调用成员函数get_results()
printf($the_db)
返回正确的登录凭据,但显然是错误的,因为'affected_rows' = -1
。
我找不到丢失或配置错误的内容。代码如下。
require_once($_SERVER['DOCUMENT_ROOT'] . $folder . '/wp-config.php');
require_once($_SERVER['DOCUMENT_ROOT'] . $folder . '/wp-load.php');
//db-setup
function dbsetup($usr, $passwd, $databas, $hst){
global $wpdb;
$the_db = new wpdb($usr, $passwd, $databas, $hst);
}
//disp-field-list
function dbfldfrm(){
$fieldlstress = $the_db->get_results("SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.Columns where TABLE_NAME = 'index_records'");
答案 0 :(得分:2)
在询问之前,请在本网站上搜索错误字符串的解决方案。顺便说一句,您需要在本地范围内全球化变量 以便在全球范围内可用:
function dbsetup($usr, $passwd, $databas, $hst){
global $wpdb;
global $the_db;
$the_db = ...
// same as: $GLOBALS['the_db'] = ...
其次,要从全局范围获取,请执行以下操作:
function dbfldfrm(){
global $the_db;
.....