バージョン選択

フォーラム

メニュー

オンライン状況

52 人のユーザが現在オンラインです。 (41 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 52
もっと...

サイト内検索

質問 > フロント機能 > 会員登録での必須項目解除後、確認ページ完了のエラー

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
MIYATA
投稿日時: 2012/8/12 15:13
対応状況: −−−
半人前
登録日: 2012/7/7
居住地:
投稿: 23
会員登録での必須項目解除後、確認ページ完了のエラー
以下の内容のご助言、宜敷くお願い申し上げます。
環境等///////////
[EC-CUBE]  2.11.1
[レンタルサーバ] WADAX共用サーバ
[PHP] PHP 5.1.6
[データベース] MySQL 5.0.95
[WEBサーバ] apache
[ブラウザ]safariバージョン 5.1.7
////////////////

PHP、MySQL等は理解できません(すみません勉強中です)。

既存の入力フォームのお名前の部分を下記の様に(下段)少し変更しました。
会員登録確認ページ完了、未入力チェックでのエラーでの解決方法のご助言、
宜敷くお願い申し上げます

会員登録での必須入力を解除する様にform-personal-input.tplファイルの
<span>*</span>のタグを削除し、
関連classでのSC-Helper-Custmer.phpファイル、必須解除した部分のEXIST_CHECKを削除しました。
結果、会員登録(確認ページ)までは必須部分が未入力でも表示できましたが、

会員登録(確認ページ)で「登録登録」ボタンを押すと必須部分の項目が未入力のため、
システムエラーと言う事で完了にはなりません。
・ちなみに必須部分に入力すると完了になります。

「会員登録(確認ページ)で「登録登録」ボタンを押すと」の
チェックがかかるphpファイル捜してチェックを削除したいのですが、
なかなか見つかりません。かなり捜したのですが分かりませんでした。
どなたか、お教え頂けませんか。

以下が変更したタグ部分
【form-personal-input.tplの変更】/////////////
<tr>
<th>会社名</th>
<td>
<!--{assign var=key1 value="`$prefix`name01"}-->
<!--{if $arrErr[$key1] }-->
<div class="attention"><!--{$arrErr[$key1]}--></div>
<!--{/if}-->
会社名&nbsp;<input type="text" name="<!--{$key1}-->" value="<!--{$arrForm[$key1]|h}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" style="<!--{$arrErr[$key1]|sfGetErrorColor}-->; ime-mode: active;" class="box300" />
<p style="margin-top:4px;"><span class="attention">
★法人会社名、所属、商号、等を記入して下さい。</span></p>
</td>
</tr>
<tr>
<th>氏名<span class="attention">※</span></th>
<td>
<!--{assign var=key2 value="`$prefix`name02"}-->
<!--{if $arrErr[$key2]}-->
<div class="attention"><!--{$arrErr[$key2]}--></div>
<!--{/if}-->
氏名&nbsp;<input type="text" name="<!--{$key2}-->" value="<!--{$arrForm[$key2]|h}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" style="<!--{$arrErr[$key2]|sfGetErrorColor}-->; ime-mode: active;" class="box150" />
</td>
</tr>

【SC-Helper-Custmer.phpの変更部分】//////////////
function sfCustomerCommonParam (&$objFormParam) {
$objFormParam->addParam("会社名", 'name01', STEXT_LEN, 'aKV', array("SPTAB_CHECK" ,"MAX_LENGTH_CHECK"));
$objFormParam->addParam("氏名", 'name02', STEXT_LEN, 'aKV', array("EXIST_CHECK","SPTAB_CHECK" , "MAX_LENGTH_CHECK"));
$objFormParam->addParam("氏名(フリガナ・姓)", 'kana01', STEXT_LEN, 'CKV', array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK"));
$objFormParam->addParam("氏名(フリガナ・名)", 'kana02', STEXT_LEN, 'CKV', array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK"));
torataro
投稿日時: 2012/8/13 0:29
対応状況: −−−
一人前
登録日: 2010/6/16
居住地: 東京都台東区
投稿: 140
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
こんばんは。

修正箇所は合っていると思います。

DBの方で、name01カラムをユニーク設定されていたりしませんか?

外れていたらすみません・・・。
MIYATA
投稿日時: 2012/8/13 13:52
対応状況: −−−
半人前
登録日: 2012/7/7
居住地:
投稿: 23
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
有り難うございます。
初心者なので少しお教え下さい。
--DBの方で、name01カラムをユニーク設定されていたりしませんか?--は
DBはhtml/install/sql/create_table_mysql.sqlの
create_table_mysql.sqlの事でしょうか?

CREATE TABLE dtb_customer (
customer_id int NOT NULL,
name01 text NOT NULL,
name02 text NOT NULL,
kana01 text NOT NULL,
kana02 text NOT NULL,
zip01 text,
zip02 text,
pref smallint,
addr01 text,
addr02 text,
email text NOT NULL,
email_mobile text,
tel01 text,
tel02 text,
tel03 text,
fax01 text,
fax02 text,
fax03 text,
sex smallint,
job smallint,
birth datetime,
password text,
reminder smallint,
reminder_answer text,
salt text,
secret_key varchar(50) NOT NULL UNIQUE,
first_buy_date datetime,
last_buy_date datetime,
buy_times numeric DEFAULT 0,
buy_total numeric DEFAULT 0,
point numeric DEFAULT 0,
note text,
status smallint NOT NULL DEFAULT 1,
create_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_date timestamp NOT NULL,
del_flg smallint NOT NULL DEFAULT 0,
mobile_phone_id text,
mailmaga_flg smallint,
PRIMARY KEY (customer_id)
になっていました。

php初心者での試した事は(エラーにならない方法)
LC_Page_Entry.phpの
//-- 会員登録と完了画面
※ $this->arrErr = SC_Helper_Customer_Ex::sfCustomerEntryErrorCheck($objFormParam);
※ if(empty($this->arrErr)) {

※ $uniqid = $this->lfRegistCustomerData($this->lfMakeSqlVal($objFormParam));

$this->tpl_mainpage = 'entry/complete.tpl';
$this->tpl_title = '会員登録(完了ページ)';
$this->lfSendMail($uniqid, $this->arrForm);

// 仮会員が無効の場合
if(CUSTOMER_CONFIRM_MAIL == false) {
// ログイン状態にする
$objCustomer = new SC_Customer_Ex();
$objCustomer->setLogin($this->arrForm['email']);
※ }
// 完了ページに移動させる。
SC_Response_Ex::sendRedirect('complete.php', array('ci' => SC_Helper_Customer_Ex::sfGetCustomerId($uniqid)));
}
の ※の部分をコメントアウトとすると完了と、登録完了のメールが出来るのですが、
顧客管理には登録されません。
単純に考えると、enptyエラーをコメントアウトして顧客管理に登録出来る様にタグすれば良いのかと
思うのですが、出来るのでしょうか???????
torataro
投稿日時: 2012/8/13 16:48
対応状況: −−−
一人前
登録日: 2010/6/16
居住地: 東京都台東区
投稿: 140
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
あてが外れてすみません。

name01 text NOT NULL

name01が NOT NULL となっていますね。
何か値を設定しないと格納できませんので、
これが原因と思われます。

NOT NULL を外せば解決できると思います。
MIYATA
投稿日時: 2012/8/14 8:08
対応状況: −−−
半人前
登録日: 2012/7/7
居住地:
投稿: 23
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
torataro様、有りとうございます。

NOT NULLの部分を外してファイルを保存後、登録ボタンをクリックしても
完了表示に「システムエラー・・・・・」が表示されます。

今は、お名前、フリカナ、そして年齢のフィールド部分の改良をしているのですが、
(1回目の質問に書いた通り、未入力でもチェック表示は回避出来たのですが)
※いずれの項目を「EXIST_CHECK」削除、「NOT NULL」削除しても
上記フィールドのいずれかが、空の場合、システムエラーは起きました。

ちなみに、nonmember.phpのページは「EXIST_CHECK」削除で完了できます。
dbも初期からNOT NULLは外れています。

投稿後、ネットで調べたのですが、NOT NULLの処理で会員登録の改良が出来る様に
書かれていたのですが、当方は駄目でした。

私はsafariでページを確認しながらDreamweaverでサイトのファイルを修正して保存後、
ブラウザで更新しながらチェックをしています。
NOT NULL変更後のブラウザ再起動しないと有効にならないのでしょうか…
更新だけで良いと思うのですが、


torataro
投稿日時: 2012/8/14 10:06
対応状況: −−−
一人前
登録日: 2010/6/16
居住地: 東京都台東区
投稿: 140
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
引用:

NOT NULLの部分を外してファイルを保存後、…


どのようにNOT NULLを外されたのですか?
NOT NULLが外れているかDBは確認されましたか?

引用:

ちなみに、nonmember.phpのページは「EXIST_CHECK」削除で完了できます。
dbも初期からNOT NULLは外れています。


非会員購入の場合は、会員情報をDBに格納しませんから、完了できたのだと思います。
NOT NULLの件とは無関係かと。
MIYATA
投稿日時: 2012/8/14 12:28
対応状況: −−−
半人前
登録日: 2012/7/7
居住地:
投稿: 23
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
お世話になります。

引用:

どのようにNOT NULLを外されたのですか?
NOT NULLが外れているかDBは確認されましたか?


eccube/html/install/sql/create_table_mysql.sql--の
CREATE TABLE dtb_customer--の
name01 text NOT NULL,
name02 text NOT NULL,
kana01 text NOT NULL,
kana02 text NOT NULL,
--の
NOT NULLを削除、保存しました。

以下がサイトのeccube/html/install/sql/create_table_mysql.sql--の
CREATE TABLE dtb_customerの最終タグを
コピーしたものです。

CREATE TABLE dtb_customer (
customer_id int NOT NULL,
name01 text,
name02 text,
kana01 text,
kana02 text,
zip01 text,
zip02 text,
pref smallint,
addr01 text,
addr02 text,
email text NOT NULL,
email_mobile text,
tel01 text,
tel02 text,
tel03 text,
fax01 text,
fax02 text,
fax03 text,
sex smallint,
job smallint,
birth datetime,
password text,
reminder smallint,
reminder_answer text,
salt text,
secret_key varchar(50) NOT NULL UNIQUE,
first_buy_date datetime,
last_buy_date datetime,
buy_times numeric DEFAULT 0,
buy_total numeric DEFAULT 0,
point numeric DEFAULT 0,
note text,
status smallint NOT NULL DEFAULT 1,
create_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_date timestamp NOT NULL,
del_flg smallint NOT NULL DEFAULT 0,
mobile_phone_id text,
mailmaga_flg smallint,
PRIMARY KEY (customer_id)
) ENGINE=InnoDB;

他に該当するDBファイルが有るのでしょうか?
宜敷くお願い申し上げます
torataro
投稿日時: 2012/8/14 15:31
対応状況: −−−
一人前
登録日: 2010/6/16
居住地: 東京都台東区
投稿: 140
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
状況がわかりました^^

create_table_mysql.sql のファイルを変更・保存してもDBへの変更にはなりません。

DBの変更は、DB管理ツール(PhpMyadmin等)か、OSのコンソールから操作しないとなりません。

お使いのサーバー環境の場合のDB操作方法を調べるところから、かと思います。
MIYATA
投稿日時: 2012/8/14 17:48
対応状況: −−−
半人前
登録日: 2012/7/7
居住地:
投稿: 23
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
お世話になります。
下記のコメントは

引用:

DBの変更は、DB管理ツール(PhpMyadmin等)か、OSのコンソールから操作しないとなりません。
お使いのサーバー環境の場合のDB操作方法を調べるところから、かと思います。


次の画像、サーバーサイトのMySQL管理「phpMyAdmin」の部分でしょうか。
現状こうなっています。





Web制作ではエディタ入力で制作していますので、html,cssは理解は出来るのですが、
MySQLやサーバー等の事は初心者です。

この度の事は大変勉強になります。
もう少しお教え下さい。
宜敷くお願い申し上げます。
torataro
投稿日時: 2012/8/14 18:34
対応状況: −−−
一人前
登録日: 2010/6/16
居住地: 東京都台東区
投稿: 140
Re: 会員登録での必須項目解除後、確認ページ完了のエラー
EC CUBEとは関係なくなってますがもう少しのところなので。

PhpMyadminの操作画面があれば簡単です。

1.name01カラムをチェックして編集ボタン(鉛筆マーク)をクリック

2.NULLを許可するか、のところが「いいえ」になっているはずなので解除

3.実行ボタンを押下

以上で、name01カラムのNOT NULLが解除されると思います。

尚、PhpMyadminの使い方はググればすぐ出てくると思います。
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,288名です
総投稿数は109,688件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.