【PHP】スマホのdatetime-localの入力欄でvalueが飛んでしまう不具合を直した


こんな不具合
サーバから値を受け取って本来以下のように表示されるべきところが・・・

こんな風に空っぽの状態で表示されてしまう!

ちなみにソースを見るとしっかりとvalueには値は入っている模様。

何故だ・・・。

今日はそんな摩訶不思議に挑んできました!


犯人はTの字
犯人は日付と時刻の区切り文字でした。

区切り文字が半角スペースだとスマホではうまく値が入らないようです。

気づかねーよ!知らねーよ!そんな仕様!

ってことで突貫工事しました。

str_replace(‘ ‘, ‘T’, $sample_datetime)

DBから引き抜いた値の区切り文字を半角スペースからTに書き換えています。

私の知る限りでは、DBでdatetime型を指定していれば、日付と時刻の間以外に半角スペースが入ることはないはずなので恐らくこれで大丈夫なはず・・・。


最後まで読んでいただきありがとうございます。もしこの記事を気に入って頂けたようであればシェアをお願い致します。非常に励みになります。


コメントを残す