2009-12-02 5 views
0

Quand j'utilise les Zend_Form_Element_Select éléments avec multioptions je reçois cette erreur lorsque je passe la valeur sélectionnée pour Zend_DB_Table à insérer dans le dbComment faire pour contourner cette erreur db Zend_Form_Element_Select?

Message: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'accounts_status ' in 'field list' 

J'ai extrait quelques extraits de code qui, je crois un long chemin en illustrant mon problème.Le accounts_status champ DOES existent dans ma table

sur ma forme construction ont ajouté l'élément de sélection et les options (j'ai laissé les autres éléments)

$optionsstatus = array(
        'active' => 'active', 
        'pending' => 'pending'    
        ); 
    $optionsrole = array(
       'guest' => 'guest', 
       'user' => 'user', 
       'writer' => 'writer', 
       'admin' => 'admin'    
       ); 

    $status = new Zend_Form_Element_Select('accounts_status'); 
        $status->setLabel('Status') 
        ->setRequired(true)    
        ->addMultiOptions($optionsstatus); 
    $role = new Zend_Form_Element_Select('accounts_role'); 
        $role->setLabel('Role') 
        ->setRequired(true) 
        ->addMultiOptions($optionsrole); 

J'utilise le Zend_Db_Table pour insérer les valeurs post de mon contrôleur

public function addaccount($username, $fullname, $email, 
     $password,$status,$roles,$comments) 
    { 
     $data = array(
       'accounts_username' => $username, 
       'accounts_fullname' => $fullname, 
       'accounts_email' => $email, 
       'accounts_password' => $password,    
       'accounts_status ' => $status, 
       'accounts_roles' => $roles,    
       'accounts_comments ' => $comments, 
     ); 
     $this->insert($data); 
    } 

Dans mon contrôleur i obtenir les valeurs de poste et les envoyer à mon modèle

$username = $form->getValue('accounts_username'); 
       $fullname = $form->getValue('accounts_fullname'); 
       $email = $form->getValue('accounts_email'); 
       $password = $form->getValue('accounts_password'); 
       $status = $form->getValue('accounts_status'); 
       $roles = $form->getValue('accounts_roles'); 
       $comments = $form->getValue('accounts_comments'); 
       $accounts = new Model_DbTable_Account(); 
       $accounts->addaccount($username, $fullname,$email, 
       $password,$status,$roles,$comments); 

Ce travaux d'approche pour moi, sauf quand je traite avec les éléments Zend_Form_Element_Select.Am je me demandais s'il existe une façon spécifique de traiter ces éléments de sélection lorsqu'il s'agit d'opérations CRUD.

Répondre

0
Message: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'accounts_status ' in 'field list' 

Peut-être que je suis fou, mais me semble que il y a un espace supplémentaire à cette fin de ce nom de domaine 'accounts_status '.

+0

Comment puis-je me débarrasser de cela parce que je ne présente clairement ces "espaces" nulle part dans mon code. – davykiash

+0

Merci je viens de le voir. – davykiash

+0

np. parfois vous avez juste besoin d'une paire supplémentaire d'yeux :) – typeoneerror

Questions connexes