get result函数在Ajax的php代码中不起作用

时间:2018-10-25 16:53:37

标签: php mysql ajax

我正在尝试从数据库(wordpress网站)获取数据并将其显示在我的前端html页面上。

我当前的代码:

jQuery:

$(document).ready(function(e) {
    $('#result_submit').click(function() {

     $.ajax({
            url  :ajaxurl,
            type :'POST',
            data: { 'action': 'expense' },
            success: function(data){
                $("#result").html(data);
            }
        });
    }); 
}); 

PHP:

add_action( 'wp_ajax_expense', 'expense_check' );
add_action( 'wp_ajax_nopriv_expense', 'expense_check' );

function expense_check(){
include_once 'dbConnection.php';

$stmt = mysqli_stmt_init($conn);

$income = "select SUM(amount) as incomeNumber FROM wp_myexpenses WHERE entry_type='Income'";
$response = '';

if (! mysqli_stmt_prepare($stmt,$income)) {
     $response = '<h1 style="color:red;padding-top:5%;">SQL Error !!</h1>';
} else {

    echo "going to correct 1";
     mysqli_stmt_execute($stmt);
     echo "going to correct 2";
     $result = mysqli_stmt_get_result($stmt);
     echo "going to correct 3";
     $income_sum = mysqli_fetch_assoc($result); 
     echo "going to correct 4";
     $response = "Total Income is new ".$income_sum['incomeNumber'];
}

echo $response;
}

我在本地wordpress网站(XAMPP)中成功测试了相同的代码,但是当我在原始网站上实现相同的代码时,它无法正常工作。发现mysqli_stmt_get_result没有提取任何信息。我当前的phpinfo()显示已启用mysqli。检查了先前的问题和其他论坛后,我了解到必须mysqlnd才能使用nd_mysqli

当前,我正在使用bluehost的共享主机计划。根据他们的说法,mysqlnd未在共享计划中启用。我也没有看到任何选项来启用此在线(在PHP配置) 我是php的初学者。无论如何,我可以使这项工作吗?

0 个答案:

没有答案