■商品問い合せを実装する
商品詳細ページから対象商品について問合せをする機能を実装する
商品詳細ページに問合せボタンを設置
<form method="post" action="<!--{$smarty.const.HTTPS_URL}-->contact/<!--{$smarty.const.DIR_INDEX_PATH}-->">
<input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->">
<input type="hidden" name="name" value="<!--{$arrProduct.name}-->">
<input type="hidden" name="product_code" value="<!--{$arrProduct.product_code_min}-->">
<button type="submit">この商品についての問合せはコチラ</button>
</form>
商品詳細ページから問合せページによる画面遷移の場合は商品名と商品コードを表示させる
<table summary="お問い合わせ">
<!--{if $arrContactCommodity && $arrContactCommodity != ''}-->
<tr>
<th>お問合せ商品</th>
<td>
<!--{$arrContactCommodity.name}--> (コード:<!--{$arrContactCommodity.product_code}-->)
<input type="hidden" name="name" value="<!--{$arrContactCommodity.name}-->">
<input type="hidden" name="product_code" value="<!--{$arrContactCommodity.product_code}-->">
</td>
</tr>
<!--{/if}-->
問合せ確認ページに商品名と商品コードを表示する
<table summary="お問い合わせ内容確認">
<col width="30%">
<col width="70%">
<!--{if $arrForm.name.value && $arrForm.name.value != ''}-->
<tr>
<th>お問合せ商品</th>
<td><!--{$arrForm.name.value|h}--> (コード:<!--{$arrForm.product_code.value|h}-->)</td>
</tr>
<!--{/if}-->
メールのテンプレートに商品名と商品コードを追記する
<!--{if $arrForm.name.value && $arrForm.name.value != ''}-->
■商品名 :<!--{$arrForm.name.value}--> (コード:<!--{$arrForm.product_code.value}-->)
<!--{/if}-->
問合せクラスにてPOSTデータの処理
/**
* Page のアクション.
*
* @return void
*/
public function action()
{
// 商品詳細ページの問合せボタンから遷移した場合
if(isset($_POST['name']) && $_POST['name'] != '')
{
// POSTデータを保持する
$this->arrContactCommodity = $_POST;
}
parent::action();
}
/**
* お問い合わせ入力時のパラメーター情報の初期化を行う.
*
* @param SC_FormParam $objFormParam SC_FormParam インスタンス
* @return void
*/
public function lfInitParam(&$objFormParam)
{
$objFormParam->addParam("商品名", "name", MTEXT_LEN, 'KVa', array("SPTAB_CHECK" ,"MAX_LENGTH_CHECK"));
$objFormParam->addParam("商品コード", "product_code", MTEXT_LEN, 'KVa', array("SPTAB_CHECK" ,"MAX_LENGTH_CHECK"));
parent::lfInitParam(&$objFormParam);
}


