我正在开展一个项目,我必须根据日期更新记录,但记录不更新,如果我更新记录没有日期clouse其工作正常。 我有更改格式的日期因为mysql表格列中的日期格式不同。
我将日期格式更改为:
<option
value="<?php $dat1=$q['dt_period_start_date'];
//for example $dat1=2011-04-01;
echo date('d-M-Y',strtotime($dat1));?> to <?php $dat2=$q['dt_period_end_date'];
echo date('d-M-Y',strtotime($dat2));?>">
//now i have date in 01-Apr-2011 to 31-Mar-2012 format
第二,我必须在此日期前更新
使用此更新i:
$qry=mysqli_query($con,"update dbo_tbfeemaster set nu_amount='$amount3' where nu_sub_id='$subscription3' and vc_member_type='$member_type3' and vc_financial_year='$financial_year2' ");
并且此代码无效,我的数据未更新。
3如果我手动给出日期
如果我在sql查询中将数据库日期提取为静态,则代码工作正常并记录获取更新。见代码:
$qry=mysqli_query($con,"update dbo_tbfeemaster set nu_amount='$amount3' where nu_sub_id='$subscription3' and vc_member_type='$member_type3' and vc_financial_year='01-Apr-2010 to 31-Mar-2011' ");
它显示正常...实际如果我在查询中使用'$ financial_year2'它不能正常工作如果我使用静态日期为'01 -Apr-2010至2011年3月31日'其工作正常.....如果我回复$ financial_year2,那就像'01 -Apr-2010一样到2011年3月31日
我已经尽可能地解决问题的根本原因,但是我知道我的数据没有更新的原因和原因以及解决方法....
提前致谢。
答案 0 :(得分:0)
如果您的查询有效,则很容易看出错误。只需echo
您的查询。只需将其设为echo
而不是mysqli_query()
。是的,就像那样简单。
echo "update dbo_tbfeemaster set nu_amount='$amount3' where nu_sub_id='$subscription3' and vc_member_type='$member_type3' and vc_financial_year='$financial_year2'";
echo "<br>";
echo "update dbo_tbfeemaster set nu_amount='$amount3' where nu_sub_id='$subscription3' and vc_member_type='$member_type3' and vc_financial_year='01-Apr-2010 to 31-Mar-2011' ";
你会立刻看到你做错了什么!