バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 商品登録におけるドロップダウンリストの表示

管理機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
linkline
投稿日時: 2009/5/12 17:43
対応状況: −−−
半人前
登録日: 2009/5/4
居住地:
投稿: 22
Re: 商品登録におけるドロップダウンリストの表示
ありがとうございます。
商品登録の項目を追加する際にdtb_productsテーブルにshiftカラムを追加していますが、やはり問題ありでしょうか?

>value に入る値は、商品IDです。
というところがものすごく気になります。

管理画面からみる分には商品IDは問題なく登録されているようです。。。

よろしくお願いします。
zibaj
投稿日時: 2009/5/8 21:11
対応状況: −−−
半人前
登録日: 2009/5/8
居住地: 茨城県
投稿: 25
Re: 商品登録におけるドロップダウンリストの表示
<select name="shift">
<option value="">選択してください</option>
<option value="FAT">FAT</option>
<option value="CAT">CAT</option>
<option value="6MT">6MT</option>
<option value="5MT">5MT</option>
<option value="4MT">4MT</option>
<!--{html_options options=$arrShift selected=$arrForm.shift}-->
</select>

では、無理です。
value に
商品名
テーブル名:dtb_products の
フィールド名:name
が書かれています。

value に入る値は、商品IDです。

具体的には、
テーブル名:dtb_products の
フィールド名:product_id
を渡さなければなりません。


「<select name="shift">」も間違いです。
「<select name="product_id">」でなければなりません。引用:

linklineさんは書きました:
新しく商品登録項目を追加し、その項目をセレクトボックスで選択した場合に、未入力時などのエラー表示画面で、選択したリストの値が解除されて未選択の状態にもどってしまいます。
Smarty の分野なのか Htmlの分野なのかわかりませんが、解決できなくて困っています。
初歩的なことで恐縮ですがお力添えをお願いいたします。
他の箇所を参考に見よう見まねで下記ような感じでやってみたのですが…

<select name="shift">
<option value="">選択してください</option>
<option value="FAT">FAT</option>
<option value="CAT">CAT</option>
<option value="6MT">6MT</option>
<option value="5MT">5MT</option>
<option value="4MT">4MT</option>
<!--{html_options options=$arrShift selected=$arrForm.shift}-->
</select>


----------------
★〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
★   webカラクリ.com
★   TEL: 080-6774-4423
★〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

linkline
投稿日時: 2009/5/6 18:08
対応状況: 解決済
半人前
登録日: 2009/5/4
居住地:
投稿: 22
Re: 商品登録におけるドロップダウンリストの表示
できました!!
なんとお礼を言ってよいものか・・・

まとめますと
LC_Page_Admin_Products_Product_Exの

/* 商品登録ページ表示用 */
function lfProductPage() {
$objDb = new SC_Helper_DB_Ex();


$this->myOptions = array(
''=> '選択してください',
'FAT' => 'FAT',
'CAT' => 'CAT',
'6MT' => '6MT',
'5MT' => '5MT',
'4MT' => '4MT'
);

と書き込み、

// 入力エラーチェック
function lfErrorCheck($array) {

の部分に

$objErr->doFunc(array("走行", "shift", STEXT_LEN), array("EXIST_CHECK","MAX_LENGTH_CHECK"));

product.tplに
<!--{html_options name="Shift" options=$myOptions selected=$arrForm}-->
のように追加しました。

これがエラーチェックだけでなく情報の伝達も隠し持たせていたんですね!

Seasoft様、長々とお付き合いいただき、本当にありがとうございました。
引き続き勉強させていただきます!
linkline
投稿日時: 2009/5/6 17:56
対応状況: −−−
半人前
登録日: 2009/5/4
居住地:
投稿: 22
Re: 商品登録におけるドロップダウンリストの表示
>多分入力チェックなどと統合して、フォームの入力内容をエラーページに隠し情報で持たせるなどしています。

ありがとうございます。なるほど、そういう仕組みなんですね!
ひょっとして$key1とかなんとか書いてあるのがその情報ですかね?
しばらくその部分を探してみます。
seasoft
投稿日時: 2009/5/6 17:34
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: 商品登録におけるドロップダウンリストの表示
> 選択した5MTをエラー時の再入力画面でも5MTと選択された状態にすることは不可能なのでしょうか?

無論、そのようにロジックを書けば可能です。


> 会員登録画面では住所や職業などがセレクトボックスとなっているかと思いますが、一度選択した県名は選択した状態で再入力画面が表示されています。

当該ロジックを確認していませんが、多分入力チェックなどと統合して、フォームの入力内容をエラーページに隠し情報で持たせるなどしています。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

linkline
投稿日時: 2009/5/6 17:26
対応状況: −−−
半人前
登録日: 2009/5/4
居住地:
投稿: 22
Re: 商品登録におけるドロップダウンリストの表示

ありがとうございます。
そうなんですか。。。

やはり勉強不足ですね…

選択した5MTをエラー時の再入力画面でも5MTと選択された状態にすることは不可能なのでしょうか?

会員登録画面では住所や職業などがセレクトボックスとなっているかと思いますが、一度選択した県名は選択した状態で再入力画面が表示されています。

同じようにしようと思ったのですが、なかなかうまくいきません。
seasoft
投稿日時: 2009/5/6 17:16
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: 商品登録におけるドロップダウンリストの表示
> たとえば最初はFATが表示されるようにしてあると思います。

現状では、常にFATが表示されるようにしてあると思います。


> ちなみに
> $this->mySelect = 'FAT';
> を消してみたのですがそれでも同じです。

FATが選択肢の一番上だと、そうなると思います。
もしも、一番上に「未選択(選択してください)」などがあるとしたら、そちらが選択されるはずなのですが。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

linkline
投稿日時: 2009/5/6 17:07
対応状況: −−−
半人前
登録日: 2009/5/4
居住地:
投稿: 22
Re: 商品登録におけるドロップダウンリストの表示
たとえば最初はFATが表示されるようにしてあると思います。

で、登録するときにたとえば6MTを選択したとして、別の箇所で未入力があった場合などにエラー画面になり「商品名が入力されていません」などとでます。
その画面でシフト項目をみると、またFATに戻っています。

テキストボックスの場合は入力した文字列が表示されているのですが、セレクトボックスの場合エラーするたびにまた選択しなおさなければならない状態です。

ちなみに
$this->mySelect = 'FAT';
を消してみたのですがそれでも同じです。
seasoft
投稿日時: 2009/5/6 16:56
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: 商品登録におけるドロップダウンリストの表示
> しかし、エラーなどの場合に選択した項目の選択が解除されることは変わりません。

「解除」とは、具体的にはどのような動作を示しますか?

現状だと、常に 'FAT' が選択されるのかなと予測しているのですが。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

linkline
投稿日時: 2009/5/6 16:52
対応状況: −−−
半人前
登録日: 2009/5/4
居住地:
投稿: 22
Re: 商品登録におけるドロップダウンリストの表示
ありがとうございます。

$this->mySelect = 'FAT';
だけでなく

$this['myOptions'] = array(
についても
$this->myOptions = array(
と変更したところ、正常にリストの中身が表示されるようになりました。

しかし、エラーなどの場合に選択した項目の選択が解除されることは変わりません。
下記にはらせていただきます。


/* 商品登録ページ表示用 */
function lfProductPage() {
$objDb = new SC_Helper_DB_Ex();

$this->myOptions = array(
'FAT' => 'FAT',
'CAT' => 'CAT',
'6MT' => '6MT',
'5MT' => '5MT',
'4MT' => '4MT'
);
$this->mySelect = 'FAT';

// カテゴリの読込
list($this->arrCatVal, $this->arrCatOut) = $objDb->sfGetLevelCatList(false);

if (isset($this->arrForm['category_id']) && !is_array($this->arrForm['category_id'])) {
$this->arrForm['category_id'] = unserialize($this->arrForm['category_id']);
}
if($this->arrForm['status'] == "") {
$this->arrForm['status'] = DEFAULT_PRODUCT_DISP;
}

if(isset($this->arrForm['product_flag']) && !is_array($this->arrForm['product_flag'])) {
// 商品ステータスの分割読込
$this->arrForm['product_flag'] = SC_Utils_Ex::sfSplitCheckBoxes($this->arrForm['product_flag']);
}

// HIDDEN用に配列を渡す。
$this->arrHidden = array_merge((array)$this->arrHidden, (array)$this->objUpFile->getHiddenFileList());
// Form用配列を渡す。
$this->arrFile = $this->objUpFile->getFormFileList(IMAGE_TEMP_URL, IMAGE_SAVE_URL);



// アンカーを設定
if (isset($_POST['image_key']) && !empty($_POST['image_key'])) {
$anchor_hash = "location.hash='#" . $_POST['image_key'] . "'";
} elseif (isset($_POST['anchor_key']) && !empty($_POST['anchor_key'])) {
$anchor_hash = "location.hash='#" . $_POST['anchor_key'] . "'";
} else {
$anchor_hash = "";
}


$this->tpl_onload = "fnCheckSaleLimit('" . DISABLED_RGB . "'); fnCheckStockLimit('" . DISABLED_RGB . "'); fnMoveSelect('category_id_unselect', 'category_id');" . $anchor_hash;
}
(1) 2 3 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は89,312名です
総投稿数は110,082件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1652
8
red
1570
9
mcontact
1304
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
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.