【问题标题】:Wordpress Fatal error: Cannot access empty propertyWordpress 致命错误:无法访问空属性
【发布时间】:2012-11-10 07:32:04
【问题描述】:

喂,

这段代码可以在本地运行,但是当我将它上传到测试服务器时,它就出现了错误。我是 wordpress 插件的新手,但我知道 php 是如何工作的。

我收到此错误:

Fatal error: Cannot access empty property

这是给出错误的行(最后一行):

global $wpdb;
$wpdb -> show_errors();
$dbPrefixHere = $wpdb -> $prefix;

我在这里做错了吗?还是有更好/更好的方式来获取 db 前缀?

编辑 1 好的,我已经完成了,但是现在没有创建 db 表...

我正在使用这部分代码:

$sQueryCheckProjectDB = "CREATE TABLE ".$dbPrefixHere."automaticthesiswriter_projects (
                          projectID int(11) NOT NULL AUTO_INCREMENT,
                          userID int(11) NOT NULL,
                          shareID int(11) NOT NULL,
                          projectName mediumtext NOT NULL,
                          projectDescription mediumtext NOT NULL,
                          PRIMARY KEY  (projectID)
                        ) ENGINE=InnoDB DEFAULT CHARSET=latin1;";
dbDelta($sqlUseOnPageSQLCreate);

但是没有创建表,也没有显示错误...

【问题讨论】:

    标签: wordpress prefix


    【解决方案1】:

    尝试改变:

    $dbPrefixHere = $wpdb -> $prefix;
    

    到:

    $dbPrefixHere = $wpdb->prefix;
    

    补充答案:(使用了不正确的变量?)

    $sQueryCheckProjectDB = "CREATE TABLE ".$dbPrefixHere."automaticthesiswriter_projects (
                              projectID int(11) NOT NULL AUTO_INCREMENT,
                              userID int(11) NOT NULL,
                              shareID int(11) NOT NULL,
                              projectName mediumtext NOT NULL,
                              projectDescription mediumtext NOT NULL,
                              PRIMARY KEY  (projectID)
                            ) ENGINE=InnoDB DEFAULT CHARSET=latin1;";
    dbDelta($sQueryCheckProjectDB);
    

    参考:http://codex.wordpress.org/Creating_Tables_with_Plugins

    【讨论】:

    • 好吧,这行得通,但现在别的东西行不通了。我已经更新了问题...您知道解决方法吗?
    • 哈哈,我怎么会这么盲目,看不到那个……嗯,非常感谢:D
    猜你喜欢
    • 1970-01-01
    • 2013-02-01
    • 2018-08-20
    • 2015-06-13
    • 1970-01-01
    • 2013-08-04
    • 1970-01-01
    相关资源
    最近更新 更多