我正在尝试从数据库(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的初学者。无论如何,我可以使这项工作吗?