[Tep-j-develop] 管理画面の顧客情報編集のチェック不具合

Back to archive index

Tsukasa Sakaguchi t-sak****@brain*****
2002年 12月 19日 (木) 16:30:03 JST


さかぐち@brainheartsです。

管理画面の顧客情報編集(admin/customers.php)の入力チェックを強化していた
ところ、チェックのjavascriptにエラーがあるの気付きました。

たとえば、

 161   if (customers_firstname = "" || customers_firstname.length < 
       <?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?>) {
 162     error_message = error_message + "<?php echo JS_FIRST_NAME; ?>";
 163     error = 1;
 164   }

ですが、比較演算子(==)であるべきところに、代入演算子(=)が使用されています。
# customers_firstname = "" は常に成功するため true が返されます

そのため、たとえば 

 165   else if (customers_firstname に半角カナが含まれているか) {
 166     error_message = error_message + '半角カナはつかえません';
 167     error = 1;
 168   }

というようなチェックを追加しても、customers_firstnameは "" に置き換えられて
しまっているので、意図したチェックができなくなります。

この問題は 英語版(20021216)にも残っています。
なお、顧客の新規登録画面でのチェック(catalog/includes/form_check.js.php)は
比較演算子(==)が使われているので、問題ありません。

-- 
BrainHearts Corp.
Tsukasa Sakaguchi / t-sak****@brain*****
Tel. 045-290-7561



Tep-j-develop メーリングリストの案内
Back to archive index