私はdatetime-local入力を持つフォームを持っており、ユーザーがこのdatetime-localに入力した日付と時刻の値を抽出し、その値をデータベースのlistDatesという列に渡す方法を探していますテーブルdate_table;入力からdatetime-local値を取得してデータベースに挿入する適切な方法は何ですか?
私のデータベース接続は正常に動作します。そして、私は、テキストボックスを単純な文字列で追加するこれらの同様の機能を多く持っています。登録していないdatetime-localだけです(または、0000-00-00 00:00:00(1970年1月1日の初期日時の値)として登録します)。
日時、ローカルと私のデータベースにそれを渡す?あなたが提供することができます任意の助けをありがとう、私は唯一のPHPとMySQLiをコーディングして、この特定の部分で立ち往生しています。
マイフォーム
<form>
<input name="theDate" type="datetime-local" required>
<a href="dateCRUD.php?theDate=<?php $_GET['theDate'] ?>&action='addDate'"</a>
<!--I'm not sure if $_GET should be the proper way to get the datetime-local value-->
</form>
私のdateCRUD phpどこで追加、更新、date_tableというデータベーステーブルから日付を削除する
$theDate = isset($_REQUEST['theDate']);
switch($_REQUEST['action']){
case 'addDate':
{
addDate($theDate);
break;
}
}
addDateへの私のPHPのMySQLiを機能()
function addDate($theDate)
{
global $conn; //my connection to my database which works fine.
$query = 'INSERT INTO date_table SET listDates = ?';
$stmt = $conn->prepare($query);
$stmt->bind_param('s', $theDate) //can datetime-local be a 'string'?
$stmt->execute();
}
EDIT
それが助け場合、私は私の中に私のdate_tableの '日時' に私のlistDateタイプを設定データベース。代わりに 'string'型に変更する必要がありますか?
は、$ theDate値をエコーアウトします。私はそれがデータベースが理解できないタイムゾーン情報を追加しているので、値をゼロに設定していると推測しています。タイムゾーン情報を保持したい場合は、この情報を抽出し、データベースに別のフィールドを作成してそこに格納する必要があります。 – jeff