Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Une faute notice est émise avec la fonction find()
voici mon modéle
class ReferencePays extends Zend_Db_Table_Abstract
{
/**
* Enter description Nom de la table
*
* @var string
*/
protected $_name ='eq_reference_pays';
/**
* clef primaire
*
* @var string
*/
protected $_primary = 'eq_ref_pays_id';
/**
* champs de la table
*
* @var array
*/
protected $_cols = array('eq_ref_pays_id',
'eq_ref_pays',
'eq_ref_pays_langue',
'eq_ref_pays_monnaie',
'eq_ref_pays_symbole_monnaie',
'eq_ref_pays_HTTP_ACCEPT_LANGUAGE');
voici le code mon contrôleur
//presence d'un get id
if($this->_hasParam('id')){
//lecture du get id
$id = $this->_getParam('id');
//recherche de l'enregistrement
$row = $reference->find($id)->current();
//Appel de méthode Ajouter
$form_saisie = $formulaire->Ajouter($row);
}
et l'erreur notice
Notice: Undefined index: eq_ref_pays_id in /data/www/equote-pprod.si/html/library/Zend/Db/Table/Abstract.php on line 997
que manque t'il pour eviter cette erreur
Hors ligne
Montre nous peut-être ajouter() et si $formulaire est bien une instance de ton objet.
Hors ligne
Le début du contrôleur
$reference = new ReferencePays();
//Instanciation de la classe de l'administration des pays
$formulaire = new AdministrationForm();
//Non presence d'un POST
if (!$this->_request->isPost()){
$id='';
//presence d'un get id
if($this->_hasParam('id')){
//lecture du get id
$id = $this->_getParam('id');
//recherche de l'enregistrement
$row = $reference->find($id)->current();
//Appel de méthode Ajouter
$form_saisie = $formulaire->Ajouter($row);
}//if($this->_hasParam('id')){
else{
//Appel de méthode Ajouter
$form_saisie = $formulaire->Ajouter();
}//else if($this->_hasParam('id')){
//Envoi du formulaire à la vue
$this->view->form = $form_saisie;
}
le formulaire ajouter()
///
$hidden = new Zend_Form_Element_Hidden('eq_ref_pays_id');
$hidden->setDecorators($this->_hidden_thickbox);
if($donnees){
if(is_object($donnees)){
//valeur du champs
$hidden->setValue($donnees->eq_ref_pays_id);
}
else{
//valeur du champs
$hidden->setValue($donnees['eq_ref_pays_id']);
}
}
//ajout de l'élément au formulaire
$form->addElement($hidden);
///
Et la faute notice même lorsque que je masque le formulaire
Hors ligne
Hello,
Désolé de ne pas répondre mais peux-tu entourer ton code avec les balises \[code\] et \[/code\]
(sans les slashs) . C'est plus simple pour la lecture .
A+
Dernière modification par mikaelkael (29-09-2008 18:44:46)
Hors ligne