Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用AJAX和Wordpress获取结果_Php_Jquery_Ajax_Wordpress - Fatal编程技术网

Php 使用AJAX和Wordpress获取结果

Php 使用AJAX和Wordpress获取结果,php,jquery,ajax,wordpress,Php,Jquery,Ajax,Wordpress,我正在使用Wordpress,我制作了一个页面(dm_page.php),它使用了我创建下拉列表的Contact form 7插件。在下拉列表的更改事件中,我正在使用ajax。我在header.php中编写的ajax代码。ajax向其提供数据的文件是getdata.php,位于主题文件夹中 getdata.php: <?php global $wpdb; $ddlval = $_POST['ddlval']; $results = $wpdb->get_row('select *

我正在使用Wordpress,我制作了一个页面(
dm_page.php
),它使用了我创建下拉列表的Contact form 7插件。在下拉列表的更改事件中,我正在使用ajax。我在
header.php
中编写的ajax代码。ajax向其提供数据的文件是
getdata.php
,位于主题文件夹中

getdata.php:

<?php
global $wpdb;

$ddlval = $_POST['ddlval'];
$results = $wpdb->get_row('select * from my_dynamictest where lang="'.$ddlval.'"', ARRAY_A);

$someArray = [];
array_push($someArray,[
    'id' => $results['id'],
    'name' => $results['name']
]);

echo json_encode($someArray);
?>

我假设您提供的是这个AJAX页面的全部代码。如果是这样,(可能有一种“官方”的方式来进行AJAX调用),但我只包括
wp config.php
文件:

<?php
if(empty($_POST))
    exit;
// If file in the themes folder: /wp-content/themes/dm_page.php: /../../wp-config.php
// If file inside a theme in the theme folder: /wp-content/themes/mytheme/dm_page.php: /../../../wp-config.php
require(__DIR__.'/../../../wp-config.php');
global $wpdb; 
$ddlval  =  $_POST['ddlval'];
$results =  $wpdb->get_row('select * from my_dynamictest where lang="'.$ddlval.'"', ARRAY_A);

$someArray = [];
array_push($someArray,[
    'id' => $results['id'],
    'name' => $results['name']
]);

echo json_encode($someArray);
?>

您必须加载
require(\uuuu DIR\uuu.'/../../../../../wp load.php')在文件的开头

因此,您的getdata.php:如下所示:

<?php
require(__DIR__.'/../../../wp-load.php');
global $wpdb;

$ddlval = $_POST['ddlval'];
$results = $wpdb->get_row('select * from my_dynamictest where lang="'.$ddlval.'"', ARRAY_A);

$someArray = [];
array_push($someArray,[
    'id' => $results['id'],
    'name' => $results['name']
]);

echo json_encode($someArray);
?>

这是本页的全部代码吗?