1

これをできる限り説明しようと思います。コントローラーから結果の配列を返しています。ユーザーが「従業員の追加」ボタンをクリックしたときに、選択した行の主キーをデータベースへのレコードの挿入を管理する別のコントローラーに送信したいと考えています。私の主キーはMOVIE_ID. 現在、このMOVIE_ID {12341, 31351}ように 2 つの配列を返しています。私の質問は次のとおりです。

  1. 各ムービー ID を対応する行のボタンに一意に関連付けるにはどうすればよいですか?

  2. attributeを介してコントローラーに変数を渡すことはできますaction=""か? JS は必要ですか?

ここに画像の説明を入力

            <fieldset id= "results">

                <?php if (isset($results ) And count($results)) : ?>
                    <table id="box-table-a" summary="Employee Sheet">
    <thead>
        <tr>
            <th scope="col">Employee</th>
            <th scope="col">Salary</th>
            <th scope="col">Bonus</th>
            <th scope="col">Supervisor</th>
            <th scope="col">Action</th>
        </tr>


            <?php foreach ($results as $result) : ?>
                            <tr>
//Primary key <?php echo $result['MOVIE_ID!'];?>
<td><span class="Employee_name"><?php echo $result['Employee']; ?> </span></td>         
<td><span class="Salary"><?php echo $result['Salary']; ?> </span> </td>
<td><span class="Bonus"><?php echo $result['Bonus']; ?> </span> </td>
<td><span class="Supervisor_name"><?php echo $result['Supervisor']; ?> </span></td>
<td><input type="submit" value="add employee" > </td>

    </tr>

    <?php endforeach; ?>
        <?php endif; ?>
    </thead>
        <tbody>
    </fieldset>
4

1 に答える 1

1

1 つのトリックは、次のように送信ボタンを介して ID を渡すことです。

<input name="submit[12341]" type="submit" value="add employee" />

クリックするとsubmit[12341]=add+employee、POST データが送信されます (すべてを<form>タグ内にラップしたと仮定します)。他のボタンは送信されず、クリックされたボタンのみが送信されます。

PHP では、次のように ID を取得できます。

$id = key($_POST['submit']);
于 2012-08-28T06:47:39.947 に答える