0

テーブルに日付を POST しようとしていますが、取得できません。私はこのようにテーブルを作成します:

        mysql_select_db("kiracilar", $con);
    $sql2 = "CREATE TABLE kira
    (
        id INTEGER NULL AUTO_INCREMENT DEFAULT NULL,
        KIRACI_ID INTEGER,
        kira INTEGER,
        odeme BOOL DEFAULT 0,
        tarih DATE DEFAULT 0,
        PRIMARY KEY (`id`)
    )";
    mysql_query($sql2,$con)

テーブルを作成した後、次のように投稿してテーブルに送信します。

$date = $_POST["date"];
$query2= "INSERT INTO kira (KIRACI_ID,kira,odeme,tarih) VALUES ('$id','$kira','$odeme','$date')";

私がしているのは、たとえば「2012-09-27」の POST ですが、それはかかりません。エコーすると、投稿した内容が表示されるため、投稿に問題はありません。データベースにアクセスすると、テーブルに「0000-00-00」のようなデフォルトが表示されます。これは正しいと思います...(正しく機能している他のものを見ないでください)私はphp5、phpmyadminを使用しています。あなたが私を助けることができれば、それは素晴らしいことです.

私が得るいくつかの答えによると。これも追加しました:

        date_default_timezone_set('Europe/Istanbul');

if (date_default_timezone_get()) {
    echo 'date_default_timezone_set: ' . date_default_timezone_get() . '<br />';
}

if (ini_get('date.timezone')) {
    echo 'date.timezone: ' . ini_get('date.timezone');
}

これはうまくいきます。しかし、それでも私は自分の日付をテーブルに入れることができません。

4

4 に答える 4

2

あなたが使用することができFROM_UNIXTIMEますstrtotime()

$date = strtotime($_POST["date"]);
$query2= "INSERT INTO kira (KIRACI_ID,kira,odeme,tarih) VALUES ('$id','$kira','$odeme',FROM_UNIXTIME('".$date."'))";
于 2012-09-27T08:18:15.253 に答える
2

クエリの前に次を追加します。

$date = date("Y-m-d", strtotime($date));
于 2012-09-27T08:16:04.450 に答える
0

試す:

 $date = date('Y-m-d', $_POST["date"]);
于 2012-09-27T08:17:08.853 に答える