0

PHPを介してPostgreSQLから生成されたテーブルがあります。

ユーザーは、行を削除するか更新するかを選択できる必要があります。

したがって、非表示の要素を使用して削除ボタンを実装し、削除のキー情報を delete.php に渡すことに成功しました。

今、phpをdelete.phpではなくupdate.phpに送信する更新ボタンを追加しようとしています。

ただし、フォームを開くと、送信時にデータを送信する場所を指定します。

私の質問は、両方のボタンを利用可能にし、どのボタンが押されたかに応じて、フォームがデータを適切な php-delete.php と update.php に投稿する方法はありますか? おそらく、フォーム属性として持つのではなく、どこにPOSTするかを指示できるとは思えない入力ボタンの属性でしょうか?

これが私が持っているものの例です:

 echo '<form action="delete.php" method="POST">';
        echo '<tr>';
        echo '<td class="even">' . $row['id'] . '</td>';
        echo '<td class="odd">' . $row['name'] . '</td>';
        echo '<td class="even">' . $row['countrycode'] . '</td>';
        echo '<td class="odd">' . $row['district'] . '</td>';
        echo '<td class="even">' . $row['population'] . '</td>';
        echo '<input type="hidden" name="todelete" value="'.$row['countrycode'].'"  />';
        echo '<input type="hidden" name="cityname" value='.$row['name'].'" />';
        echo '<input type="hidden" name="tablename" value="'.$_POST["search-type"].'"  />';
        echo '<td> <input class="odd" type="submit" name="updateBtn" value="Update?"  /></td>';
        echo '<td> <input class="even" type="submit" name="deleteBtn" value="Delete?" /></td>';
        echo '</tr>';
        echo '</form>';

これはテーブルの行ごとに生成されるため、各フォームは一意であり、そのデータのみが送信されます。

2 つのボタンを実装する方法について何かアイデアがあれば教えてください。

4

1 に答える 1

4

最も簡単な方法は、アクションとして SINGLE スクリプトを使用し、次に基本的なスクリプトを使用することです。

<?php

if (isset($_POST['deleteBtn'])) {
   ... do delete stuff
} else if (isset($_POST['updateBtn'])) {
   ... update stuff here ...
}

そうしないと、アクション ターゲットを動的に変更するための JavaScript が必要になります。

于 2012-10-01T03:31:50.643 に答える