PHPで書かれたアップロードスクリプトがあり、CSVからデータを受け取り、アップロードされた各CSVの各特定のテーブルに挿入します。phpでmysqlと異なる日付形式を挿入
別の日付形式のデータを正しく挿入しないという問題を修正する必要があります。すべての日付形式をカバーし、時間以外のYYYY-MM-DD(2016-09-27)のように保存する必要があります。
Database table:
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
USER VARCHAR(50) NOT NULL,
Date DATE,
Time TIME
PHP/MySQL
$stmt = $conn->prepare("INSERT INTO ".$table_name." (User, Date,Time) VALUES (?,?,?)");
$stmt->bind_param("sss", $user, $date,$time);
$user = $data_array[$i][0];
$date = $data_array[$i][1];
$time = $data_array[$i][2];
$stmt->execute();
私はSTR_TO_DATEについて読んでてきたが、私は、私はこのケースでは、それを使うべき場所がわからないんだけど: それはこのようになります。
$user = $data_array[$i][0];
$date = $data_array[$i][1];
$time = $data_array[$i][2];
$stmt->bind_param("sss", $user, $date,$time);
次: あなたはMySQLの日付フォーマット機能を使用することができますuはbind_param()このよう $user $date $time
でそれらを使用した後
にのみ、FORMATの日付のデータベースに 'Y-M-D 'タイプの日付を挿入することができます。 –
$ date = $ data_array [$ i] [1];のデータ型と値は正確に何ですか? – sietse85
「LOCALEなどのヒントを指定することができない限り、すべての日付形式をカバーする必要があります。これは不可能です。 2011年3月2日が3月2日か2月3日かを知る方法はありません。それは、英語が英語以外の単語で表される2桁または月によって表される可能性を検討する前です。 – symcbean