1

これに対する回避策が見つからないようです。

私は使用している賢いベースのスクリプトを持っています。

送信投稿ページにあるフォームから2つの値を送信しようとしています。私は実際に、現在のフォームからすでにいくつかのフィールドを「posts」テーブルに正常に投稿しています。

ただし、ここに私の問題があります。カテゴリ名とカテゴリ ID の両方を独自の列に入れる必要があります。今はどちらかしか選べません。

私のフォームにはこれが含まれています:

<select name="category" id="category" >
    {section name=i loop=$msgcat}
        <option value="{$msgcat[i].catname|stripslashes}">{$msgcat[i].catname|stripslashes}</option>
    {/section}
</select>

これをhtmlで次のようにレンダリングします:

<select id="category" name="category">
<option value="Car">Car</option>
<option value="Truck">Truck</option>
<option value="Boat">Boat</option>
<option value="Motorcycle">Motorcycle</option>
<option value="RV">RV</option>
<option value="Other">Other</option>
</select>

この同じフォームで、「カテゴリ」ドロップダウンの選択に基づいて、関連付けられたカテゴリ ID「値」を割り当てることができる catid という非表示の入力フィールドを作成する方法はありますか?

「カテゴリ選択 = 車の場合、非表示の入力値 = 1」のようなもの (ドロップダウン選択ごとにルールを含める必要があります)

これはphpで行われますか?ジャバスクリプト?

私がやろうとしていることを行うためのはるかに良い方法はありますか?

現在、「カテゴリ」ドロップダウン フィールドは「投稿」テーブルの「カテゴリ」列に適切に送信されます。それぞれ、同じテーブルの「catid」列に入れるために catid が必要です。

catid は、カテゴリごとに定義された値です。たとえば、車 = 1、トラック = 2、ボート = 3 などです。

1 は「車」の catid です ...など。

4

2 に答える 2

0

値属性内に情報を配置するだけです。| を使用します。データを分離し、サーバー側でこの情報を分割します。$msgcat[i].catid を id 変数として使用しているとします。

<select name="category" id="category" >
    {section name=i loop=$msgcat}
        <option value="{$msgcat[i].catid}|{$msgcat[i].catname|stripslashes}">{$msgcat[i].catname|stripslashes}</option>
    {/section}
</select>
于 2013-10-08T10:32:14.023 に答える