你好,我試圖執行後,他們支付它檢查他們支付了多少錢,並輸入sql數據庫中的不同變量與if方法。PHP其他如果方法不工作?
問題: 問題是所有的,如果方法返回這個第一個選項(插入支付= 1,30天)不知道是什麼問題,是我的,如果方法破了什麼問題,請解釋一下?!謝謝!
if(number_format($amount, 2) == 8.00)
{
$mysqli = new mysqli(******);
$stmt = $mysqli->prepare("UPDATE `as_users` SET paid='1', reg_date=CURRENT_TIMESTAMP, end_date=DATE_ADD(CURRENT_TIMESTAMP(), INTERVAL 30 DAY) WHERE username = ?");
$stmt->bind_param('s', $username);
$stmt->execute();
} elseif (number_format($amount, 2) == 10.00)
{
$mysqli = new mysqli(******);
$stmt = $mysqli->prepare("UPDATE `as_users` SET paid='2', reg_date=CURRENT_TIMESTAMP, end_date=DATE_ADD(CURRENT_TIMESTAMP(), INTERVAL 30 DAY) WHERE username = ?");
$stmt->bind_param('s', $username);
$stmt->execute();
} elseif (number_format($amount, 2) == 100.00)
{
$mysqli = new mysqli(******);
$stmt = $mysqli->prepare("UPDATE `as_users` SET paid='2', reg_date=CURRENT_TIMESTAMP, end_date=DATE_ADD(CURRENT_TIMESTAMP(), INTERVAL 365 DAY) WHERE username = ?");
$stmt->bind_param('s', $username);
$stmt->execute();
}
編輯:我試着用$amount
並使用從下拉菜單中數組的名字也試過我有
array("Basic Package-Monthly", "8.00", "Month", "1", "0", "0"),
array("Premium Package-Monthly", "10.00", "Month", "1", "0", "0"),
array("Premium Package-Annually", "100.00", "Year", "1", "0", "0"),
你只需要'$ = mysqli的新的mysqli(***** *);'一次,在if語句之上。 –
哦,好吧謝謝羅伯特,你有什麼想法解決問題嗎? – Ghandour
與'number_format($ amount,2)'相同。如果你把結果放在一個變量中,你可以在你的'if'語句中引用這個變量。它具有將數值放在一個位置以便檢查它的額外好處。 –