【freo】【freoTips】【プラグイン系TIPS】フォーム管理プラグインで複数の項目を改行で連結する方法
- 2016/05/11 14:17
- フォーム管理プラグイン
- 6
フォーム管理プラグインでは、複数の入力項目を連結することができます。
上記TIPSで複数の入力項目を「-」などで連結することができますが、これを改行で連結する場合は、下記のようにしてください。
まずは項目を「,」で連結する
まずは複数の項目を「,」などで連結します。
上記を参考に、[freo/templates/plugins/form/form.html]に
<input type="hidden" name="plugin_form[__label][任意のID]" value="項目名" /> <input type="hidden" name="plugin_form[__implode][任意のID]" value="," />
<dt>複数の入力項目</dt> <dd> <input type="text" name="plugin_form[任意のID][]" size="10" value="" /> <input type="text" name="plugin_form[任意のID][]" size="10" value="" /> <input type="text" name="plugin_form[任意のID][]" size="10" value="" /> </dd>
のように入力し、複数の入力項目を作成し、「,」で連結します。
「,」で連結した入力項目を「改行」で区切る
[freo/libs/freo/plugins/page.form.php]の1365~1372行目
//送信内容定義 $message = ''; foreach ($form['__label'] as $id => $label) { $message .= "■" . $label . "\n"; $message .= (isset($form[$id]) ? $form[$id] : '') . "\n"; $message .= "\n"; } $message = trim($message);
を、下記の通り変更します。
//送信内容定義 $message = ''; foreach ($form['__label'] as $id => $label) { $form[$id] = str_replace(",", "\n", $form[$id]); $message .= "■" . $label . "\n"; $message .= (isset($form[$id]) ? $form[$id] : '') . "\n"; $message .= "\n"; } $message = trim($message);
変更後のソースの4行目
$form[$id] = str_replace(",", "\n", $form[$id]);
部分が、「,」を「改行(\n)」に変更している部分です。
連結文字を「,」以外にする場合は、こちらも変更して下さい。