PHP文件chrash服务器



我正在尝试创建一个PayPal IPN文件,但响应不会插入数据库。经过一点调试,我发现我的函数有一个错误,但我不知道是哪一个。

下面的代码似乎是错误的,但我不知道为什么。我觉得不错。我做错什么了吗?

<?php
function check_price($price, $id) {
  $valid_price = false;
  $sql = $wpdb->get_results("SELECT * FROM `webc_products` WHERE id = '$id'");
  foreach ( $sql as $prod ) {
    $num = (float)$prod->amount;
    if($num == $price){
      $valid_price = true;
    }   
  }
  return $valid_price;
}
$a = check_price(0.01, 1);
?>

此外,我尝试了函数外的代码,不知怎么的,它起作用了。

您的函数正在访问$wpdb对象,而实际上没有访问它的权限(变量范围)。要么将其作为参数传递给函数(我建议这样做),要么在函数中将其声明为全局。

最新更新