我的PHP驗證數據有問題。 這是我到目前爲止的代碼PHP驗證數據錯誤
$cek_saldo=mysql_query
("SELECT * FROM t_balance");
while ($data_cek = mysql_fetch_array($cek_saldo));
{
$b_id = $data_cek['badge_id'];
$mon = $data_cek['month'];
$bal = $data_cek['balance_type'];
}
if ($b_id == '$badge_id' AND $mon == '$date_month' AND $b_type == '$jns_saldo')
{
echo "<div class='emp_err warn'>Balance for this month has been added before.</div>";
}
else
{
if($_POST)
{
$query = "INSERT INTO t_balance(badge_id, balance_amount, month, balance_type, date_transaction)
VALUES ('$badge_id', '$saldo', '$bulan', '$jns_saldo', '$date_transaction')
";
$hasil = mysql_query($query);
if($hasil)
{
echo "<div class='emp_err success'>Balance transaction successfully added.</div>";
}
else
{
echo "<div class='emp'>Gagal menambahkan saldo.</div>";
}
}
}
的規則是:
Tabungan Wajib可以提交每月1次。所以如果兩次,它會給出錯誤:「本月的餘額已經添加過。」
Tabungan Tambahan可以每月提交超過1次。所以如果提交超過一次,它將被保存。
任何人都有建議嗎?
是否有錯誤輸出?你正在經歷的行爲是什麼?你在期待什麼?請澄清一些問題。 –
邁克爾,我必須做的是防止提交數據兩次,如果有與badge_id,月份和餘額類型相同的數據。它僅用於Tabungan wajib規則。對於Tabungan tambahan,可以多次提交 –
[**請勿在新代碼**中使用'mysql_ *'函數](http://bit.ly/phpmsql)。他們不再被維護[並被正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果選擇PDO,[這裏是一個很好的教程(http://www.brightmeup.info/article.php?a_id=2)。 –