2012-09-11 113 views
-2

我正在嘗試製作PayPal IPN文件,但不會將響應插入到數據庫中。經過一些調試,我發現我的函數有一個錯誤,但我不知道哪一個。PHP文件崩潰服務器

看來,下面的代碼是錯誤的,但我不知道爲什麼。我看起來很好。難道我做錯了什麼?

<?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); 
?> 

此外,我試過代碼之外的功能,它以某種方式工作。

+0

您是否啓用了錯誤報告?如果你不能告訴我們錯誤是什麼,那麼很難告訴你。 – PeeHaa

+1

服務器錯誤日誌中是否有任何內容? – andrewsi

+0

不是,但該頁面甚至不會顯示。我開了:_Server錯誤 網站在檢索http://example.com/test/時遇到錯誤。它可能因維護而關閉或配置不正確._ – Romeo

回答

7

您正在訪問$wpdb對象,但沒有實際訪問權限(變量作用域)。 要麼將​​它作爲參數傳遞給你的函數(我推薦)或者在你的函數中聲明它爲全局函數。