2012-05-11 48 views
0

我有使用beforeSave(..)加密一个字段的模型。 它适用于我的电脑与WAMP服务器,但是当我上传到服务器时,Security :: cipher(..)方法似乎返回随机值。cakephp beforsave - 密码返回随机值

public function beforeSave() 
{ 
     if(isset($this->data[$this->alias]['somefield'])) 
      { 
       $key = Configure::read('Security.salt'); 
       $cipher = Security::cipher($this->data[$this->alias]['somefield'],$key);  
       echo $cipher.'</br>'.$this->data[$this->alias]['somefield']; 
       die;    
       $this->data[$this->alias]['somefield'] = $cipher; 
      } 
      return true; 
     } 

此代码返回相同的密码和值对我的电脑,但在服务器上的值是从该值产生相同的,但密码是随机的。我发现这篇文章CakePHP Security::cipher() is not working specifically on server - 我不知道这是一个问题,但它说,密码()使用srand可能被禁用 - 我如何解决这个问题 - 我不能改变任何东西在PHP配置,我只是有FTP访问服务器。在PC

PHP:5.3.9 PHP服务器上:5.2.17

回答