1

バスケットにアイテムを追加する機能があります。この関数では、このユーザーのバスケットが既に存在するかどうかを確認し、それに応じてバスケットを作成または更新します。バスケットを作成または更新するとき、タイムアウト フィールドを 4 時間後に設定する必要があります。ただし、バスケットを作成または更新すると、タイムアウトの dateTime フィールドは 0000-00-00 00:00:00 になります。これが私のコードです(codeigniterフレームワークを使用したphp):

$dateTime = date("Y-d-m h:m:s", strtotime("+4 hours"));

if($query->num_rows() != 1)
{


    $this->db->insert("baskets", array("basket_session" => session_id(), "basket_timeout" => $dateTime, "basket_delivery" => "0.00"));

}
else
{

    $this->db->where("basket_session", session_id());
    $this->db->update("baskets", array("basket_timeout" => $dateTime));

}

私は何が欠けていますか?

4

3 に答える 3

4

MySQL の DATETIME 形式はY-m-d H:i:s.

于 2012-08-13T11:32:41.400 に答える
1

試す:

$dateTime = date("Y-m-d H:i:s", strtotime("+4 hours"));
于 2012-08-13T11:33:26.170 に答える
1

変化する

$dateTime = date("Y-d-m h:m:s", strtotime("+4 hours"));

$dateTime = date("Y-m-d H:i:s", strtotime("+4 hours"));
于 2012-08-13T11:33:46.520 に答える