6
votes

Illégal 0000-00-00 00:00:00 horodatage envoyé par PHP à MySQL à l'aide de CodeDigniter

Voici une fonction de basey_update_enter dans mon modèle de codeigniter qui est exécutée sur la soumission de formulaire réussi.

<?php
    function update_entry(){
        $data = array(
            'sl' => $this->input->post('item_sl'),
            'item_name' => $this->input->post('item_name'),
            'img_url' => $this->input->post('img_url'),
            'sound_url' => $this->input->post('sound_url'),
            'price' => $this->input->post('price'),
            'unit' => $this->input->post('unit'),
            'timestamp' => time(),
        );
        echo "current time: ".  time();
        $this->db->update(MY_TABLE_NAME, $data);
    }
?>


0 commentaires

4 Réponses :


3
votes

Utilisez la date ('y-m-d h: i: s', heure ());

;)


0 commentaires

5
votes

mySQL horodatage code> Le champ Accepter AAAAY-MM-DD H: I: S code> Format de la date, vous devez donc passer la date à ce format et non l'horodatage UNIX

Au lieu de cette P>

'timestamp' => date('Y-m-d H:i:s')


1 commentaires

@syedrakib: Le char (11) est correct pour le champ d'horodatage



3
votes

Vous devez fournir une chaîne de titres, pas un entier. Essayez:

'timestamp' => date('Y-m-d H:i:s', time()),


1 commentaires

Je pensais que MySQL ait ses capacités de convertir un horodatage UNIX en un horodatage MySQL si Unix Timeestamp est ajouté au champ Timestamp.



2
votes

Temps de format: Date ('Y-M-D H: I: S', Time ())


1 commentaires

Je pensais que MySQL ait ses capacités de convertir un horodatage UNIX à un horodatage MySQL si Unix Timeestamp est ajouté au champ Timestamp .... Merci :)