質問 > その他 > ご注文手続き画面のお客様情報について |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
kwmt |
投稿日時: 2020/10/29 18:55
対応状況: −−−
|
半人前 登録日: 2020/9/10 居住地: 投稿: 15 |
ご注文手続き画面のお客様情報について ご注文手続き画面にお客様情報(名前やメールアドレスなど)が表示されると思うのですが、
その中で生年月日が本来登録している日付と1日ずれて表示されてしまいます。 原因はわかっており、タイムゾーンの関係でDB(MySQL)へ登録される際にUTCで登録されているからです。 例)1991/1/5 で登録 ⇒ DB:1991/1/4 15:00:00 そこで、DBからデータを取り出す際にタイムゾーンの変更、または9時間プラスした値にしたいのですが 実際にデータを取り出している処理の場所がわかりません。 どなたかご存知の方いらっしゃらないでしょうか。 --------追記----------- 動作を確認している中で、初めてご注文手続き画面へ進んだときのみ表示がずれて表示されることが わかりました。 ご注文手続き画面でF5更新や、支払方法を変更したときに画面が再読み込みされた後は正常に 表示されていました。 |
umebius |
投稿日時: 2020/10/31 18:39
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: ご注文手続き画面のお客様情報について 標準ではご注文手続き画面で生年月日は表示されないと思うのですが
どのような方法で表示されているのでしょうか? テンプレートに記載されたのであれば記述方法を教えていただけますでしょうか。 |
kwmt |
投稿日時: 2020/11/2 9:29
対応状況: −−−
|
半人前 登録日: 2020/9/10 居住地: 投稿: 15 |
Re: ご注文手続き画面のお客様情報について umebius 様
ご返信いただき、ありがとうございます。 以下のようにテンプレートへ記載しております。 index.twig <input type="hidden" id="customer-birth" class="customer-in" name="customer_birth" value="{{ Order.birth|date_format('', 'Y/m/d') }}"> ----------追記----------------- umebius 様 今回の件、自己解決いたしました。 ご返信いただき、ありがとうございました。 |
kwmt |
投稿日時: 2020/11/5 10:19
対応状況: 解決済
|
半人前 登録日: 2020/9/10 居住地: 投稿: 15 |
Re: ご注文手続き画面のお客様情報について 自己解決いたしました。
調査を進めたところ、index.twigにもう1箇所記載しておりました。 <p class="ec-input"><span class="customer-edit customer-birth">{{ Order.birth|date_format('', 'Y/m/d') }}</span></p> 上記の箇所が実際の表示部分に該当しておりました。 「date_format('', 'Y/m/d')」を「date('Y/m/d', 'Asia/Tokyo')」へ書き換えたところ、希望する表示になりました。 何かの参考になればと思い、記載させていただきました。 ありがとうございました。 |
delsol |
投稿日時: 2021/8/1 9:48
対応状況: −−−
|
半人前 登録日: 2008/7/24 居住地: 投稿: 23 |
Re: ご注文手続き画面のお客様情報について お世話になります。
関連して質問させてください。 上記の方法で項目を追加した場合、「変更」ボタンで日付を変更しようとすると「更新に失敗しました。入力内容を確認してください。」のエラーとなり、ログには 'Could not convert PHP value ''1999/08/01'' of type ''string'' to type ''datetimetz''. Expected one of the following types: null, DateTime' のような記録が残ります。datepickerが使えればよいのですが、どのように記述するとよろしいでしょうか。ご教授いただきたく思います。よろしくお願いいたします。 |
delsol |
投稿日時: 2021/8/4 2:16
対応状況: −−−
|
半人前 登録日: 2008/7/24 居住地: 投稿: 23 |
Re: ご注文手続き画面のお客様情報について お世話になります。すみません、自己レスです。
Shopping/index.twigの先頭で、formの全項目についてtype="text"で書き出していたので indexで場合分けし、type="date"を設定するようにしたら会員管理の編集画面と同様の カレンダ入力ができるようになりました。まだCould not convertで登録されないので NonMemberShoppingController.phpのfunction customerで $birth = new \DateTime($data['customer_birth']); と変換してからsetBirthすると登録されるようになりました。 とりあえずご報告いたします。お騒がせしました。 |
delsol |
投稿日時: 2021/8/4 7:12
対応状況: −−−
|
半人前 登録日: 2008/7/24 居住地: 投稿: 23 |
Re: ご注文手続き画面のお客様情報について もう一点補足です。
フォーマットは'Y/m/d'だと既存データが読み込まれず、'Y-m-d'だと うまくいきました。 よろしくお願いいたします。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |