Неверное значение даты и времени: '1540564519' для столбца 'date_updated' в строке 1 При сохранении модели Phalcon? - PullRequest
0 голосов
/ 26 октября 2018

Я пытаюсь сохранить данные в таблице, но при сохранении выдает следующее сообщение об ошибке:

SQLSTATE [22007]: недопустимый формат даты и времени: 1292 Неверное значение даты и времени: '1540564519' длястолбец «date_updated» в строке 1 При сохранении моделиvaluation_remedy

valuation_remedy Схема таблицы:

--
-- Table structure for table `evaluation_remedy`
--

CREATE TABLE IF NOT EXISTS `evaluation_remedy` (
`id` int(10) unsigned NOT NULL,
  `title` varchar(255) NOT NULL,
  `description` text NOT NULL,
  `diet` text NOT NULL,
  `is_local_food_store` tinyint(4) NOT NULL DEFAULT '0',
  `product_image` varchar(255) DEFAULT NULL,
  `product_description` text,
  `product_url` varchar(255) DEFAULT NULL,
  `importance` tinyint(4) NOT NULL DEFAULT '0',
  `is_active` tinyint(4) NOT NULL DEFAULT '1',
  `date_created` datetime DEFAULT NULL,
  `date_updated` datetime DEFAULT NULL
) ENGINE=InnoDB AUTO_INCREMENT=64 DEFAULT CHARSET=utf8;

--
-- Indexes for table `evaluation_remedy`
--
ALTER TABLE `evaluation_remedy`
 ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `evaluation_remedy`
--
ALTER TABLE `evaluation_remedy`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=64;

Сообщите, требуется ли какая-либо другая информация.Я буду рад поделиться всем, что требуется для решения.

Функция сохранения / сохранения:

public function saveEvaluationRemedyAction(){

        // Instantiate new form for Evaluation Symptom Model
        $form = new EbEvaluationRemedyForm();

        if( $form ->isValid($this->request->getPost())){
            // Get the Evaluation Symptom id (if any)
            $id = $this->request->get( 'id', null );
            // Get existing Evaluation Symptom (if any) or create a new one
            if( null !== $id && $id !== '' ){
                $evaluationRemedy = CxEbEvaluationRemedy::findFirst( $id );
            } else {
                $evaluationRemedy = new CxEbEvaluationRemedy();
            }

            // Bind form with post data
            $form->bind( $this->request->getPost(), $evaluationRemedy );

            // Save the form with new data
            $evaluationRemedy->save();

            // Saving linked remedies in Related Remedy Table
            $remedies = $this->request->get('remedies_list');
            if($remedies){
                foreach ($remedies as $key => $remedy) {
                    $relatedRemedy = CxEbEvaluationRemedy::getIdByName($remedy);
                    $remedyObject = new CxEbEvaluationRemedyRelated();
                    $remedyObject->setEvaluationRemedyId($evaluationRemedy->getId());
                    $remedyObject->setEvaluationRelatedRemedyId($relatedRemedy['id']);
                    $remedyObject->save();
                }
            }
        } else {
            // Send error Json response
            return CxHelper::SendJsonError($form->getHtmlFormattedErrors());
        }

        // Return success
        return array( 'data' => 'Success' );
    }

Дайте мне знать, если потребуется какая-либо другая информация.Я буду рад поделиться всем, что требуется для решения.

Спасибо

1 Ответ

0 голосов
/ 26 октября 2018

Конвертируйте его из времени эпохи так:

<?php

$date = new DateTime('@1540564519');
$formatted = $date->format('Y-m-d H:i:s');
echo $formatted; // 2018-10-26 14:35:19

Смотрите здесь https://3v4l.org/8jgUp

...