1
DB의 한 필드에 문제가 있습니다. 모든 필드가 expire_date
을 제외하고는 테이블에 저장됩니다Magento, 1 db 필드가 저장되지 않았습니다.
$expireMonth = Mage::getStoreConfig('points_options/config_points/expiration_period', Mage::app()->getStore()->getId());
if (!is_null($expireMonth) && ($expireMonth > 0)) {
$expireDate = date("Y-m-d H:i:s", strtotime("+" . $expireMonth . " month"));
} else {
$expireDate = NULL;
}
//die($expireDate);
//store in points history table
$this->_pointsModel->setCustomerId($this->_customer->getId())
->setOrdersId('welcome')
->setPointsPending($pointsForNewCustomer)
->setPointsComment(Mage::helper('points')->__('welcome points'))
->setDateAdded(date('Y-m-d H:i:s'))
->setPointsStatus(2)//confirmed
->setPointsType('WE')
->setStoreId(Mage::app()->getStore()->getId())
->setExpireDate($expireDate)
->save();
:이 코드. die($expireData)
의 주석을 삭제하면 2012-01-13 13:21:12와 같은 올바른 값이 표시됩니다. 입력란은 다음과 같이 정의됩니다.
`expire_date` datetime NULL
의견이 있으십니까?
편집 : 솔루션은 다음과 같습니다 내 strtotime으로 발현
$expireDate = date("Y-m-d H:i:s", strtotime("+" . $expireMonth . " months"));
체크 아웃 "s"를.
OMG !!! strtotime 식에 "s"가 누락 된 것으로 밝혀졌습니다. "월"이 아니라 "월"이어야합니다. 대답은 정말로 해결책이 아니지만 나를 생각하게 만들었고 그것을 발견하는 데 도움이되었으므로 여기에 몇 가지 요점이 있습니다.) 고맙습니다 clockworkgeek, 주위에서 봐요 – OSdave