2014-03-06 2 views
0

나는 jQuery AJAX Post 메소드를 사용하여 데이터베이스에 데이터를 가져 와서 삽입하는 최초의 wordpress 플러그인을 만들고 있습니다. 내 워드 프레스 버전은 3.8.1jquery ajax 게시물 요청에 의해 Wordpress 사용자 정의 플러그인에서 올바른 응답을 얻을 수 없습니다.

나는 AJAX 게시 요청을하려고했지만이 오류 메시지가 나타납니다.

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 요청 게시물은 내 페이지를 숨 깁니다 내 페이지의 상단에이 코드를 추가했습니다.
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이 표시됩니다. 내가 위의 wp-load 파일을 포함하지 않는 경우

include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-load.php'); 

, 내가 올바른 응답을하지만 난 데이터베이스와 상호 작용해야하고 동일한 Fatal error for $wpdb을주는 시작 파일을 다시 코드를 포함 위의 제거.

내 문제를 해결하려면 저를 도우십시오. 감사.

+1

용서해 발생된다 call_back 기능이를 작성해야 당신이 작성하고 AJAX 기능하는 경우 WordPress의 일부가 아닌 외부 페이지? WordPress에는 아약스를 처리하기위한 전체 API가 있으며, 코어를 포함하고 표준 PHP 페이지에서 실행하고 실행해야하는 번거 로움을 덜어줍니다. –

답변

0

나는 단지 include_once/wp-load.php 파일이 필요하다고 생각합니다.

그 후에 global $ wpdb를 정의하십시오.

$ wpdb를 정의한 후에는 암호와 관련 자격 증명을 다시 입력 할 필요가 없습니다.

그리고 당신은 당신이 게시해야하는 특별한 이유가 있나요 쿼리 실행이 거

내 영어

관련 문제