Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour lorsque j'appéle findDependentRowset alors ça affiche une plage blanche et si je commente la ligne $aAides=$oLeDemandeur->obtenirAides(); tout marche bien:
ma vue :
<html> <head> <title>La page</title> </head> <body> <h1><ul>FONDATION DES INVALIDES ET MUTILES MILITAIRES</ul></h1> <?php //echo $this->id; //echo $this->aLeDemandeur; echo '<form method="post">'; echo "<table> <tr> <td> Matricule : </td> <td> ".$this->form->matricule."</td> </tr> <tr> <td> A partir du :</td> <td> ".$this->form->jour."</td> <td> ".$this->form->mois."</td> <td> ".$this->form->annee."</td> </tr> <tr> <td> Au :</td> <td> ".$this->form->jourf."</td> <td> ".$this->form->moisf."</td> <td> ".$this->form->anneef."</td> </tr> <tr><td>". $this->form->submit."</td></tr> </table> </form>"; //echo $this->dateacfin; //echo $this->fr; if($this->oLeDemandeur) echo $this->oLeDemandeur->prenom; echo $this->aAides; /*if($this->aAides!=null){ foreach($this->aAides as $oAides) : //echo $oAides->famille; echo $this->escape($oAides->famille); endforeach; }*/ //if($this->oLeDemandeur) //echo $this->oLeDemandeur->prenom; ?> </body> </html>
mon formulaire :
<?php class FormChercher extends Zend_Form { public function __construct($options = null) { parent::__construct($options); $dateValidator = new Zend_Validate_Date($datePattern, 'fr_FR'); $matricule= new Zend_Form_Element_Text('matricule'); $matricule ->setRequired(true); $jourSelect = new Zend_Form_Element_Select('jour'); $tab1=array('01'=>'01','02'=>'02','03'=>'03','04'=>'04','05'=>'05','06'=>'06','07'=>'07','08'=>'08','09'=>'09','10'=>'10','11'=>'11','12'=>'12','13'=>'13','14'=>'14','15'=>'15','16'=>'16','17'=>'17','18'=>'18','19'=>'19','20'=>'20','21'=>'21','22'=>'22','23'=>'23','24'=>'24','25'=>'25','26'=>'26','27'=>'27','28'=>'28','29'=>'29','30'=>'30','31'=>'31'); $jourSelect->setMultiOptions($tab1); // $jourSelect->setRequired(true); //$jourSelect->addValidator(new Zend_Validate_Int()); $tab2=array('01'=>'01','02'=>'02','03'=>'03','04'=>'04','05'=>'05','06'=>'06','07'=>'07','08'=>'08','09'=>'09','10'=>'10','11'=>'11','12'=>'12'); $moisSelect = new Zend_Form_Element_Select('mois'); $moisSelect->setMultiOptions($tab2); // $moisSelect->setRequired(true); // $moisSelect->addValidator(new Zend_Validate_Int()); $tab3=array('2000'=>'2000','2001'=>'2001','2002'=>'2002','2003'=>'2003','2004'=>'2004','2005'=>'2005','2006'=>'2006','2007'=>'2007','2008'=>'2008','2009'=>'2009','2010'=>'2010','2011'=>'2011','2012'=>'2012'); $anneeSelect = new Zend_Form_Element_Select('annee'); $anneeSelect->setMultiOptions($tab3); // $anneeSelect->setRequired(true); // $anneeSelect->addValidator(new Zend_Validate_Int()); $jourSelectf= new Zend_Form_Element_Select('jourf'); $jourSelectf->setMultiOptions($tab1); //$jourSelectf->addValidator(new Zend_Validate_Int()); $moisSelectf= new Zend_Form_Element_Select('moisf'); $moisSelectf->setMultiOptions($tab2); //$moisSelectf->addValidator(new Zend_Validate_Int()); $anneeSelectf= new Zend_Form_Element_Select('anneef'); $anneeSelectf->setMultiOptions($tab3); //$anneeSelectf->addValidator(new Zend_Validate_Int()); $submit = new Zend_Form_Element_Submit('submit'); $this->addElements(array($jourSelect,$moisSelect,$anneeSelect,$jourSelectf,$moisSelectf,$anneeSelectf,$matricule,$submit)); } }
Ma classe beneficier :
<?php class Beneficier extends Zend_Db_Table_Abstract { protected $_name = 'beneficier'; protected $_rowClass = 'BeneficierRow'; protected $_referenceMap = array( 'Demandeur' => array( 'refColumns' => array('id') 'refTableClass' => 'Demandeur', 'columns' => array('iddem'), ), 'Aides' => array( 'refColumns' => array('id') 'refTableClass' => 'Aides', 'columns' => array('idaides'), ) ); }
ma fonction searchAction située dans DemandeurControlleur :
function searchAction(){global $oLeDemandeur; $form = new FormChercher(); $this->view->form = $form; if ($this->_request->isPost()) {$this->view->dateacfin="jhhn"; $formData = $this->_request->getPost(); if ($form->isValid($formData)) { $matricule=$form->getValue('matricule'); $jour=$form->getValue('jour'); $mois=$form->getValue('mois'); $annee=$form->getValue('annee'); $jourf=$form->getValue('jourf'); $moisf=$form->getValue('moisf'); $anneef=$form->getValue('anneef'); $sdateacdeb=$jour.'-'.$mois.'-'.$annee; $sdateacfin=$jourf.'-'.$moisf.'-'.$anneef; //$dateacdeb=new DateTime($sdateacdeb); //$dateacfin=new DateTime($sdateacfin); $dateacdeb=new Zend_Date($sdateacdeb,Zend_Date::DATE_SHORT); $dateacfin=new Zend_Date($sdateacfin,Zend_Date::DATE_SHORT); $demandeur=new Demandeur(); $aLeDemandeur=$demandeur->idMatricule($matricule); //$this->view->fr=$aLeDemandeur; if($aLeDemandeur){ foreach($aLeDemandeur as $oLeDemandeurs){ $oLeDemandeur=$oLeDemandeurs;} $this->view->oLeDemandeur=$oLeDemandeur; if($oLeDemandeur){ $aAides=$oLeDemandeur->obtenirAides(); $this->view->aAides="hbb"; } } $this->render(); //$this->view->id=$oLeDemandeur->id; //if($ac>$ab) //$this->view->j=$ac; //$ac=date_create($sdateacdeb); //$this->view->j=$dateacfin->toString(); //if($dateacdeb>$dateacfin) //$this->view->j=$ab; //$this->view->m=$dateacfin->getdate(); //$this->view->a=$anneef; //$this->view->a=$anneef; //$this->_redirect('demandeur/search'); } } }
DemandeurRow :
<?php class DemandeurRow extends Zend_Db_Table_Row_Abstract { //Les aides octroyées au demandeur public function obtenirAides() { return $this->findDependentRowset('Beneficier'); } }
Hors ligne
toujours pas de solution?
Hors ligne
toujours pas de solution?
Hors ligne
Page blanche => Erreur Fatal
=> Activé le display_errors de PHP ou bien regardé ses logs d'apache
=> Si le premier point ne donne rien, vérifié sa gestion d'exception dans son application
Hors ligne
Merci mais comment faire tout celà?j'en ai aucune idée.Tu peux m'aider?
Hors ligne
Tu mets au début de ton code
ini_set("error_reporting",E_ALL ); ini_set('display_errors', true);
A+, Philippe
Hors ligne
merci.Je l'ai mis mais ça affiche toujours la page blanche
Dernière modification par terrorist (30-10-2009 09:18:59)
Hors ligne
reste ça
ini_set('display_startup_errors', true);
Ensuite vérifie que ces commandes passent bien avec phpinfo();
Puis test essaye de désactiver xdebug, apc etc.
Hors ligne
@terrorist : tu as regardé dans le error log d'apache si tu n'avais pas une erreur ?
A+, Philippe
Hors ligne
J'ai ajouté cette ligne mais toujours page blache.
Peux-tu me dire comment vérifier que ces commandes passent bien avec phpinfo();?
Hors ligne
Les gas peronne n'a trouvé?Je suis toujours coincé
Hors ligne
<?php phpinfo(); ?>
Cherche error_reporting , display_errors, display_startup_errors et regarde les valeurs si elles correspondent à ce qu'elles devraient
Pour error_reporting tu devrais avoir un chiffre (cf. http://www.php.net/manual/fr/errorfunc.constants.php)
Si tes display_errors sont à On et que ton error_reporting et supérieur ou égale à 30719 (= E_ALL), et tu ne vois toujours rien, regarde BIEN dans tes logs apache (comme te l'as dis @philippe). Si tu vois toujours rien qui correspond, c'est que ton erreur est très méchant.
Alors regarde si tu n'as pas des extensions activés genre XDEBUG ou APC qui peuvent poser des problèmes. Si c'est le cas, désactive les et refait des tests.
Sache que c'est très dur d'aider quelqu'un dans un cas comme ça. Un simple "exit()" perdu dans ton code peut te filer une page blanche sans aucune erreur (cherche dans ton projet "exit" par exemple).
Sinon quand tu as des méchantes erreurs, je te conseille de chercher un débugger (eclipse + pdt peut faire ça).
Fait des recherches sur le forum, on a déjà expliquer comment installer et configurer un debugger. Ca peut faire peur mais c'est la "seul" solution (= celle qui te prendra pas 15j) pour trouver ton erreur/bug.
Hors ligne
Bonjour j'ai display_errors à ON et error_reporting à la valeur 6143.
Je n'ai ni l'extension XDEBUG ni APC.
Hors ligne
display_startup_errors est à Off
Hors ligne
Pages: 1