-2

私はphpとWordpressの初心者です。WordPressのカスタムテーブルにデータを保存するスクリプトを作成しようとしています。スクリプトに現在の日付と時刻をmysqlデータベースに保存させたい。データ型がに設定されたMysqlテーブルに列を作成しましたがDATETIME、テーブルにデータを挿入しようとすると、現在の日付が表示されません。何が問題かもしれませんか?私のスクリプトを以下に示します。

    $wpdb->insert($table,array('account_id' => $account_id, 'billing_first_name'=>$first_name,'billing_last_name' => $last_name, 'feature_level' => 'FreeAccount','created_at'=> date("Y-m-d, h:i a"),'billing_interval' => "Manual"));
4

1 に答える 1

4

クエリで渡す日付形式に問題があると思います。

作成された_atをMySqlの形式を持つ列と見なすと、DATETIMEcreated_atを正しい形式で渡す必要があります。DATETIMEフィールドは日付と時刻をフォーマットで受け入れると思いますYYYY-MM-DD HH:MM:SS

このクエリを試してみてください:

$wpdb->insert($table,array('account_id' => $account_id, 'billing_first_name'=>$first_name,'billing_last_name' => $last_name, 'feature_level' => 'FreeAccount','created_at'=> date("Y-m-d h:i:s"),'billing_interval' => "Manual"));

ここでのクエリの唯一の変更は、MySqlに渡すcreate_atフィールド値です。

date("Y-m-d h:i:s")

created_atがDATETIMEdbのフィールドではなく、設定した別の列があり、レコードを挿入するときにその列を更新する場合は、db構造を変更して、更新時にフィールドDATETIMEを自動的に更新します。DATETIMEデフォルトをに設定しCURRENT TIMESTAMPます。したがって、そのフィールドに値を渡さなくても、自動的に更新されます。

これがあなたが望むものであることを願っています。:)

于 2012-06-27T12:52:56.410 に答える