2011-03-24 249 views
0

我正在使用zend身份验证进行身份验证。并在我的本地机器上正常工作。zend中的身份验证

但是,当我尝试连接到远程服务器的数据库比问题开始。

无法登录。是会议或什么的一些问题..?

 $db = new Zend_Db_Adapter_Pdo_Mysql(array(
     'host'  => 'localhost', 
     'username' => 'root', 
     'password' => '123456', 
     'dbname' => 'saet' 
    )); 
    $form = new Default_Form_Login(); 

    if ($this->getRequest()->isPost()) { 
     //$db = Zend_Registry::get('db'); 
     $adapter = new Zend_Auth_Adapter_DbTable($db); 
     $adapter->setTableName('users') 
        ->setIdentityColumn('username') 
        ->setCredentialColumn('password') 
        ->setCredentialTreatment('MD5(?)'); 

     $credentialsArray = $this->_request->getParams(); 

     $adapter->setIdentity($credentialsArray['username']) 
       ->setCredential($credentialsArray['password']); 
     $auth = Zend_Auth::getInstance(); 
     $result = $auth->authenticate($adapter); 

     if ($result->isValid()) { 

      $userInfo = $adapter->getResultRowObject(null, 'password'); 
      // the default storage is a session with namespace Zend_Auth 
      $authStorage = $auth->getStorage(); 
      $authStorage->write($userInfo); 

      $this->_helper->FlashMessenger('Successful Login'); 
      return $this->_helper->redirector('index'); 
     } else { 
      $this->_helper->FlashMessenger->addMessage(array('error',"Invalid Username/Password")); 
      return $this->_helper->redirector('login'); 
     } 

现在,当我更改数据库的详细信息到远程服务器。它无法登录。我是新的zend。我得到应用程序错误。

+0

无法用当前的信息量来回答。请添加更多关于设置的数据以及您获得的任何错误消息。 – Gordon 2011-03-24 12:51:47

+0

更新详细信息... – Jaimin 2011-03-24 13:01:51

+0

好吧,因为“它无法登录”,它可能会给出错误消息。它是什么?什么是应用程序错误消息? – Gordon 2011-03-24 13:03:29

回答

0

要显示的错误改变你的application.ini文件如下 phpSettings.display_startup_errors = 1个 phpSettings.display_errors = 1个 resources.frontController.params.displayExceptions = 1 ,然后给我们的错误。