以时间戳存储当前时间

时间:2014-11-24 09:53:17

标签: javascript php knockout.js

我想在当前系统中添加一个新字段,即last_pwd_modified字段,只要用户想要更改密码,就会在db中存储当前时间戳。

我在调试这个问题好几个小时,因为last_pwd_modified字段不会将当前时间存储在db中,并且还会发生500(内部服务器错误)。我认为这可能是last_pwd_modified传递错误的方式,我尝试了几种其他传递但仍然失败的方法。

任何专家都可以指出我的代码中似乎存在的问题。非常感谢,并提前感谢您的时间。

这是我的模特

 public function changePasswd($uid, $newpassword) {
    $conditions=array();
    $modelData = array(
            'upwd' => sha1(strip_tags($newpassword)),
            'uid' => $uid,
            'last_pwd_modified' => "CURRENT_TIMESTAMP()"
    );
    $this->save($modelData);    
}

我的控制器中有一行调用函数

$this->users->changePasswd($uid,$ret_pwd);

这是我的viewModel

var changePassword = function () {
    var $result = {};
        $.ajax({
            url: "users/changepwd",
            type: "POST",
            async: false,
            data: $("#changePasswordID").serialize(),
            success: function(result) {
                $result = $.parseJSON(result);
            }
        });
     }

1 个答案:

答案 0 :(得分:0)

您需要使用UNIX_TIMESTAMPCURRENT_TIMESTAMP返回Y-m-d H:i:s之类的日期。不带参数使用UNIX_TIMESTAMP

此外,您的数据库lib可以使用预准备语句或转义。可能你不能使用mysql函数作为值。我想你可以试试'last_pwd_modified' => time()