0

日付に基づいてレコードを更新する必要があるプロジェクトに取り組んでいますが、レコードが更新されず、日付なしでレコードを更新すると、正常に動作します。mysqlテーブル列の日付が異なる形式であるため、日付の形式を変更しました。

日付形式を次のように変更しましたか:

<option
value="<?php $dat1=$q['dt_period_start_date'];
//for example $dat1=2011-04-01;
echo date('d-M-Y',strtotime($dat1));?>&nbsp;to&nbsp;<?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

2番目に、この日までに更新する必要があります

これを使用して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」を使用すると、静的日付を「2010 年 4 月 1 日から 2011 年 3 月 31 日」として使用すると正常に動作しません。 echo $financial_year2 は、2010 年 4 月 1 日から 2011 年 3 月 31 日と同じになります。

私はできる限りすべてのことを可能にしましたが、問題の根本的な原因は不明です。データが更新されない理由とその解決方法を教えてください....

前もって感謝します。

4

1 に答える 1

0

機能するクエリがあれば、何が問題なのかを簡単に確認できます。echo一緒にあなたのクエリだけ。.Yupechoの代わりに、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' ";

何を間違えたのかすぐにわかります!

于 2013-08-13T12:18:36.593 に答える