无法通过jquery ajax发布请求在wordpress自定义插件中获得正确的响应

时间:2014-03-06 19:35:49

标签: php jquery ajax wordpress

我正在创建我的第一个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

请帮我解决我的问题。感谢。

1 个答案:

答案 0 :(得分:0)

我认为您只需要include_once /wp-load.php档案。

之后定义全局$ wpdb。

请注意,在定义$ wpdb之后,您无需再次提供密码和相关凭据。

如果你正在编写和ajax功能,那么你必须在call_back函数中写这个,你的查询执行将会发生

原谅我的英语