L'erreur que j'essaie de supprimer est la suivante: une lettre "t" est sortie avant le reste du code HTML dans l'une de mes applications Zend Framework. Le "t" est là seulement en une seule action donc je suis certain que le problème est quelque part là.Lettre étrangère "t" dans la sortie de mon application Zend Framework - comment la trouver au mieux?
Pour illustration le balisage HTML de l'action du contrôleur buggy commence comme ceci:
t<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
Il me rend fou parce que je ne peux pas trouver où cette lettre est en cours d'impression. Voici toute l'action:
public function transactionsHistoryAction()
{
$request = $this->getRequest();
$transactions = $this->_getTable('Transactions');
$finishedTransactions = $transactions->getSelect();
$pendingWithdrawals = $transactions->getPendingWithDrawalsSelect();
$paginator = Zend_Paginator::factory($finishedTransactions);
$paginator->setCurrentPageNumber($request->getParam('p'));
$paginator->setItemCountPerPage(20);
$paginator2 = Zend_Paginator::factory($pendingWithdrawals);
$paginator2->setCurrentPageNumber($request->getParam('p2'));
$paginator2->setItemCountPerPage(20);
$this->view->headTitle('Transactions - Administration panel - Website Name');
$this->view->finishedTransactions = $paginator;
$this->view->pendingWithdrawals = $paginator2;
}
Et est ici le seul modèle que je l'utilise dans cette action:
<?php
/**
* transactions table
*
* @author Richard Knop
*/
class Transactions extends Zend_Db_Table_Abstract
{
protected $_name = 'transactions';
protected $_referenceMap = array(
'User' => array(
'columns' => array('user_id'),
'refTableClass' => 'Users',
'refColumns' => array('id')
)
);
private function _getDb()
{
return Zend_Registry::get('dbAdapter');
}
public function getSelect()
{
$select = $this->select();
$where = 'finished = 1';
$select->where($where);
$select->order('id DESC');
return $select;
}
public function getPendingWithdrawalsSelect()
{
$select = $this->select();
$where = "type = 'withdrawal' AND finished = 0";
$select->where($where);
$select->order('id DESC');
return $select;
}
}
S'il vous plaît aidez-moi: o
EDIT:
La mise en page est correct (le "t" est là seulement dans cette action spécifique, toutes les autres actions du même contrôleur produisent le HTML correct sans le "t").
On dirait que vous avez saisi par mégarde un « t » quelque part dans l'un de vos fichiers PHP (en dehors de ). Serait vraiment presque impossible pour nous de trouver sans voir tous les fichiers. – typeoneerror