随着下面的代码,我想更新一个表使用后值。更新后,与我相同的变量,我试图将值插入另一个表,如果条件。第一次更新工作正常,但插入没有发生。PHP的MySQL更新和插入,如果条件满足
<?php
if (isset($_POST['submit'])) {
$wlnid=$_POST['wlt_ln_id'];
$refwal = $_POST['wlt_name'];
$refamt = $_POST['wlt_ln_refund_amt'];
$refdtls = $_POST['wlt_ln_txn_details'];
$refdate = $_POST['wlt_ln_refund_date'];
$lntype = $_POST['wlt_ln_type'];
$query=mysqli_query($GLOBALS["___mysqli_ston"], "update wallet_loans set wlt_ln_refund_acct = '$refwal',wlt_ln_refund_amt=wlt_ln_refund_amt+'$refamt',wlt_ln_refund_txn_details='$refdtls',wlt_ln_refund_date='$refdate' where wlt_ln_id = '$wlnid'and wlt_holder_id = '{$_SESSION['SESS_MEMBER_ID']}'");
if($lntype == 'Given'){
$sql = "INSERT INTO wallet_txns(wlt_name, wlt_txn_date, wlt_txn_type, wlt_drcr_cod, wlt_txn_amount, wlt_txn_dtls, wlt_txn_cat, wlt_txn_cat_sub, wlt_amt_payee, wlt_holder_id, wlt_txn_flg_loan, wlt_txn_ln_id, wlt_txn_flg_recr, wlt_txn_recr_id) VALUES ('$refwal', '$refdate', 'Income','C', '$refamt', '$refdtls', 'Loan refund','Null','Null', '{$_SESSION['SESS_MEMBER_ID']}', 'Y','$wlnid', 'N',0)";
}
else if($lntype == 'Received'){
$sql = "INSERT INTO wallet_txns(wlt_name, wlt_txn_date, wlt_txn_type, wlt_drcr_cod, wlt_txn_amount, wlt_txn_dtls, wlt_txn_cat, wlt_txn_cat_sub, wlt_amt_payee, wlt_holder_id, wlt_txn_flg_loan, wlt_txn_ln_id, wlt_txn_flg_recr, wlt_txn_recr_id) VALUES ('$refwal', '$refdate', 'Expense','D', '$refamt', '$refdtls', 'Loan refund','Null','Null', '{$_SESSION['SESS_MEMBER_ID']}', 'Y','$wlnid', 'N',0)";
}
}?>
高级谢谢所有支持。
$ lntype是什么?我没有看到你在if之后执行SQL查询。 – Blaatpraat
你很容易受到[sql注入攻击](http://bobby-tables.com)的影响。 –
$ lntype是我的html页面中的一个文本选择字段,其值(给定和收到)。基于给定或接收我插入到另一个表。 –