我正在使用Netbeans 8.0和Xampp 3.2.1,我收到一条错误消息"应用程序错误",我已经找到了问题所在,正如您在片段中看到的:
public function loginAction() {
$users = new Application_Model_DbTable_User();
$form = new Application_Form_Login();
$this->view->form = $form;
if ($this->getRequest()->isPost()) {
if ($form->isValid($_POST)) {
$data = $form->getValues();
$auth = Zend_Auth::getInstance();
$authAdapter = new Zend_Auth_Adapter_DbTable($users->getAdapter(), 'users');
$authAdapter->setIdentityColumn('username')->setCredential('password');
$authAdapter->setIdentity($data['username'])->setCredential($data['password']);
$result = $auth->authenticate($authAdapter); // <- The problem is here
$dump = $result->getCode();
var_dump($dump);
die;
if ($result->isValid()) {
$storage = new Zend_Auth_Storage_Session();
$storage->write($authAdapter->getResultRowObject());
$this->_redirect('Authentification/login');
} else {
$this->view->errorMessage = "Invalid username or password!";
}
}
}
}
我是Zend的新手,真的不知道如何解决这个问题,有比var_dump
更好的方法来解决这个问题吗?我试过xdebug,但没能让它为我的项目工作。
首先,您必须通过config/application.ini 打开显示错误
在[生产]和[开发:生产]阶段,必须将这三条生产线的检查设置为1:
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1
因此,您可以获得有关异常或任何其他错误的正确错误消息。