操作
Backport(バックポート) #4148
完了Bug(バグ) #4013: メールアドレス変更を行うと member_config に name='captcha' のレコードが追加される
メールアドレス変更を行うと member_config に name='captcha' のレコードが追加される
開始日:
2016-09-23
期日:
進捗率:
100%
予定工数:
説明
Overview (現象)¶
メールアドレス変更を行うと、member_config に下記のような name = 'captcha' のレコードが追加される。
> SELECT * FROM member_config WHERE name = 'captcha' \G *************************** 1. row *************************** id: 145 member_id: 2 name: captcha value: Array value_datetime: NULL name_value_hash: 7fee6c903f71b6b14b0b6b6636ab3f5b created_at: 2016-08-31 15:30:37 updated_at: 2016-08-31 15:30:37
Causes (原因)¶
source:lib/form/MemberConfigForm/MemberConfigPcAddressForm.class.php@43190aa1#L28:
public function __construct(Member $member = null, $options = array(), $CSRFSecret = null)
{
parent::__construct($member, $options, $CSRFSecret);
if (sfConfig::get('op_is_use_captcha', false))
{
$this->embedForm('captcha', new opCaptchaForm());
}
}
MemberConfigPcAddressForm, MemberConfigMobileAddressForm では embedForm を使用して opCaptchaForm を追加している。一方で、saveConfig メソッドでは追加された captcha フィールドをそのまま member_config テーブルに格納しようとするため上記のような現象が発生する。
Way to fix (修正内容)¶
修正内容を記入
操作