我正在创建我的第一个wordpress插件,它只是使用jQuery AJAX Post方法在数据库中获取和插入数据。我的Wordpress版本是3.8.1
我正在尝试制作一个AJAX Post请求但是我收到了此错误消息。
Fatal error: Call to a member function get_results() on a non-object in J:\xampp\htdocs\wordpress\wp-content\plugins\auc_data_fetcher\includes\fetch-results.php on line 19
我看到了这篇文章Stackoverlow post,我在页面顶部添加了此代码,其中AJAX Post Request发布了表单,但第三行隐藏了我的页面。
include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-config.php' );
include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-includes/wp-db.php' );
$wpdb = new wpdb(DB_USER, DB_PASSWORD, DB_NAME, DB_HOST); //By adding this line hides all the pages.
然后我添加了下面的代码行,但它仍然有问题。我开始得到相同的双值而不是单个结果。
例如:
回复应为some fetched data from db
。
我得到some fetched data from db some fetched data from db
而不是单一相同的结果。
include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-load.php' );
如果我不包含上述wp-load
文件,我会得到正确的答案,但我需要与数据库进行交互,并且删除上面的包含文件代码再次开始提供相同的Fatal error for $wpdb
。
请帮我解决我的问题。感谢。
答案 0 :(得分:0)
我认为您只需要include_once /wp-load.php
档案。
之后定义全局$ wpdb。
请注意,在定义$ wpdb之后,您无需再次提供密码和相关凭据。
如果你正在编写和ajax功能,那么你必须在call_back函数中写这个,你的查询执行将会发生
原谅我的英语