• 締切済み

リスト表示からのボタンアクションに関して

漠然とした質問で申し訳ありませんが、教えて下さい。 あるDBからデータを検索したものをリスト表示し、その情報に対して 変更ボタンや削除ボタンを設けて、アクションを起こしたいと考えて いますが、PHPでそのようなケースはどんな記述をするのが適切で しょうか? PHPの場合、例えば1行毎に変更ボタンや削除ボタンを設けたとし ても、同じ情報を2のファイルへ送信できないかと思われます。 それぞれの行にチェックボックスを設けてそこへチェックが入った ものを変更、更新するとか。。。。 できればサンプルなんかも頂ければ幸いです。 よろしくお願いします。

みんなの回答

noname#151014
noname#151014
回答No.3

DBはポスグレですが・・・ $sql = "SELECT id,name FROM t_hoge ORDER BY id;"; $result = pg_exec($sql); $rows = pg_numrows($result); $columns = pg_numfields($result); echo "<table border=1>"; for ($j=0; $j<$rows; $j++) { echo "<tr>"; echo "<form name=form1 method=post action=modify.php>"; $id = pg_result($result,$j,0); $name = pg_result($result,$j,1); echo "<td>".$id."</td>"; echo "<td>".$name."</td>"; echo "<td><input type=submit value=変更></td>"; echo "</form>"; echo "<form name=form2 method=post action=delete.php>"; echo "<td><input type=submit value=削除></td>"; echo "</form>"; echo "</tr>"; } echo "</table>";

  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.2

> 同じ行に対し削除もしたい場合、更新ボタンの横に削除ボタン <input type="submit" name="update" value="更新" /> <input type="submit" name="delete" value="削除" /> if (!empty($_POST['update'])) {  ; } elseif (!empty($_POST['delete'])) {  : }

SANA_999
質問者

お礼

ありがとうございます! 大変参考になりました。

回答No.1

<? while($Row = mysql_fetch_array($result, MYSQL_ASSOC)){ ?> <td width="15%" align="center"><?= htmlstr($name) ?></td> <td width="10%" align="center"><?= htmlstr($age) ?></td> <td width="10%" align="center"><?= htmlstr($zip) ?></td><form action="./detail.php" method="POST"> <input type="submit" value="更新" /> <input type="hidden" name="month_start" value="<?=$month_start ?>" /> ・・・・・ <? } ?> このようにformをデータの件数分繰り返します。 DBはMYSQLですが・・・。

SANA_999
質問者

補足

頂いたサンプルの場合、確かに1行ずつ更新ボタンが設けられ、 1行毎にデータが更新処理がされるかと思われますが、同じ行に 対し削除もしたい場合、更新ボタンの横に削除ボタンは設けられ ないですよね。。。 何かいい手はないでしょうか。。。

関連するQ&A

専門家に質問してみよう