この問題に関係するいくつかのスレッドを調べましたが、コードの何が問題なのかまだわかりません。
この形式「mm-dd-yyyy」のフォームから日付フィールドを持ってきます。生年月日フィールドを「yyyy-dd-mm」として更新するためにコードに持ってくると、次を使用します
$birth=$_POST['dateBorn'];
$dateB = date('Y-d-m',strtotime($birth));
$finaldateB = ($dateB === false) ? '0000-00-00' : date('Y-d-m',strtotime($dateB));
変数の値を (2012 年 11 月 23 日の生年月日を使用して) エコーすると、次の値が表示されます。 12
私は明らかに何か間違ったことをしており、どこを見つけることができませんでした
ティア
物事を機能させるために、少なくともエレガントではないかもしれない回避策を発見しましたが、今のところ必要な結果が得られます
$dateB = $birth;
$dateborn_a=explode("-",$birth);
$yearborn = $dateborn_a[2];
$dayborn = $dateborn_a[1];
$monthborn = $dateborn_a[0];
$dateOfBirth=$yearborn."-".$monthborn."-".$dayborn;
次に、$dateOfBirth の値を使用してテーブルを更新します。これまでにテストしたすべてのレコードで機能しました。