私はこれを試しました:
<input type="datetime-local" value="<?php echo $row['Time']; ?>" class="date" name="start" REQUIRED>
この入力フィールドの値をデータベースのデータで設定するにはどうすればよいですか?
動作しません!!
編集も可能にする必要があります。
または別のタイプの入力を使用する必要がありますか? $ row ['Time'];データベースからです!
$row['Time']
の内容は正確にはわかりませんが、次のようになります。
定義
RFC 3339で定義されている有効な日時と、これらの追加の資格:
- 日付/時刻構文のリテラル文字TおよびZは常に大文字でなければなりません
- 代わりに、日付満期生産は、0より大きい数値を表す4桁以上の数字として定義されます
例
- 1990-12-31T23:59:60Z
- 1996-12-19T16:39:57-08:00
ソリューション
RFC 3339形式でPHPを使用して作成できます。
echo date('Y-m-d\TH:i:sP', $row['Time']);
または別の方法で:
echo date("c", strtotime($row['Time']));
または客観的なスタイルを好む場合:
echo (new DateTime($row['Time']))->format('c');
コード内
したがって、コードでは次のようになります。
<input type="datetime-local" value="<?php echo date('Y-m-d\TH:i:sP', $row['Time']); ?>" class="date" name="start" REQUIRED>
または
<input type="datetime-local" value="<?php echo date("c", strtotime($row['Time'])); ?>" class="date" name="start" REQUIRED>
手動
より多くの情報を見つけることができます here
それは簡単です、そして私のために働いて最初にあなたのPHP値をこの形式に変換します
<?php $datetime = new DateTime($timeinout[0]->time_in); ?>
次に、html input要素の値でこの形式を使用します
<input type="datetime-local" id="txt_time_in" placeholder="Time In" name="timein" value = "<?php echo $datetime->format('Y-m-d\TH:i:s'); ?>" class="form-control" />
これにより、入力要素に値が設定されます
使用できます
date('Y-m-d\TH:i'); //Example result: '2017-01-01T01:01'
tではなく\ Tを使用する場合(動作しない)
date('Y-m-dTH:i'); //Example result: '2017-01-01UTC01:01'
カロル・ガシエニカの答えは素晴らしい説明ですが、彼らの返信でも私にはうまくいきませんでした
date('Y-m-d\TH:i:s', $row['Time']); //Gives me 1970-01-01 00:00
date('Y-m-d\TH:i:sP', $row['Time']); //Gives me no display
date("c", strtotime($row['Time'])); //No display too
私のために働いたのはこれです
$t = $row['Time'];
date('Y-m-d\TH:i:s', strtotime($t)); // This got it perfectly
しかし、私はまだ説明のおかげで投票しました。
$tripid=$_REQUEST['tripid'];
$sql="SELECT * FROM tripdetails WHERE trip_id='".$tripid."'";
$trpresult=mysqli_query($connect,$sql);
if(mysqli_num_rows($trpresult)==1)
{
$trpdetails=mysqli_fetch_assoc($trpresult);
}
$trpstartdate = substr_replace($trpdetails['trip_start_date'],T,11,0);
$string = preg_replace('/\s+/', '', $trpstartdate);
これはHTMLパーツです
<input type="datetime-local" name="trip_start_date" id="cal" value="<?php echo $string?>">