Jul31(2):社内用フレームワーク(データをDBに入れる。)
mysqlにデータを入れる。この作業は別途managerを用いて行うので、新たなmanagerを作り、関数を作る。関数は一般性を持たせるので、フォーム値の値をそのまま持ってきたりしない。
- SubmitManager
class Elixir_SubmitManager extends Ethna_AppManager { public function storeVal($data){ $hobby = $data['hobby']; $hobby_str = implode(',',$hobby); $sql = "INSERT INTO user_info( familyname ,firstname ,familynamekana ,firstnamekana ,sex ,prefid ,zip1 ,zip2 ,address1 ,address2 ,email ,hobby ,other_hobby ,opinion ,createtime ,updatetime ) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,NOW(),NOW())"; $this->db->db->query($sql,array( $data['lastname'] ,$data['firstname'] ,$data['lastnamekana'] ,$data['firstnamekana'] ,$data['sex'] ,$data['zip1'] ,$data['zip2'] ,$data['pref'] ,$data['address1'] ,$data['address2'] ,$data['mailaddress'] ,$hobby_str ,$data['o_hobby'] ,$data['opinion'] )); }
んで、action/Complete.phpでは、
class Elixir_Action_Complete extends Elixir_Action_Confirm { ・ ・ ・ function perform() { $data = $this->af->getArray(false); $submit_manager = $this->getManager('submit'); $submit_manager->storeVal($data); var_dump($data); return 'complete'; } }
こんな感じです。$dataをstoreValに渡してあげてる。