DBのテーブルA("no":001,002 "name":a,b)をtable一覧し左のチェックボックスを選択するtest1,phpと、チェック選択のデータ(複数可)のみ表示&編集できるtest2.phpを作成したいと思っています。

両方チェックしてもtest2.phpに"002"のデータしか受け渡しができないため、2つのファイルの書き方を教えてください。<(_""_)>

<!-- test1.php -->
<form action="test2.php" method="post" >
<table>
<?php $ct=0; while($data = mysql_fetch_array($result)) { ?>
<tr><td><input type="checkbox" name="chk[]" value="<?php echo $data['no']; ?>"></td>
<td><?php echo $data["no"]; ?></td>
<td><?php echo $data["name"]; ?></td></tr>
<?php $ct++; } ?>
<input type="submit" value="編集" />
</form>

<!-- test2.php -->
<?php
$dataCount = count($_POST["chk"]);
if(isset($_POST["chk"])){
for($ct=0; $ct<$dataCount; $ct++) {
$result = mysql_query("SELECT * FROM A WHERE no ='" . $_POST["chk"][$ct] . "'");
$data = mysql_fetch_array($result);
}
?>
<form action="test3.php" method="post" >
<table>
<form action="test3.php" method="post">
<input type="hidden" name="no[]" value="<?php echo $data[$ct]['no']; ?>">
<tr><td><?php echo $data['no']; ?></td>
<td><input type="text" name="name[]" value="<?php echo $data['name']; ?>"></td></tr>
</table>
<?php } ?>
</form>

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2014/07/04 14:40:52
  • 終了:2014/07/11 14:45:08

回答(2件)

id:snow0214 No.1

snow0214回答回数470ベストアンサー獲得回数1162014/07/04 15:17:34

ポイント50pt

test1.php の name属性に添字を加えて下さい。
※コメントを受けてプログラムを少し直しました。

<!-- test1.php -->
 <form action="test2.php" method="post" >
 <table>
 <?php $ct=0; while($data = mysql_fetch_array($result)) { ?>
 <tr><td><input type="checkbox" name="chk[<?php echo $ct; ?>]" value="<?php printf("%03d", $data['no']); ?>"></td>
 <td><?php echo $data["no"]; ?></td>
 <td><?php echo $data["name"]; ?></td></tr>
 <?php $ct++; } ?>
 <input type="submit" value="編集" />
 </form>
他1件のコメントを見る
id:snow0214

コメントを受けて、チェックボックスのvalue値の表示を直してみました。

2014/07/07 19:21:20
id:m0r1y055

snow0214さん
有り難うございます!
何をやってもうまくいかないので、根本的な問題かも知れません。
もう少しがんばってみます。有り難うございました!!(T ^ T)/"

2014/07/08 22:26:12
id:pogpi No.2

pogpi回答回数373ベストアンサー獲得回数492014/07/06 08:57:07

ポイント50pt

test1のname属性は、chk0、chk1、・・・となるようにして、
test2で$_POST["chk0"]を参照する方がいいかも知れません。

他2件のコメントを見る
id:m0r1y055

 でカンマ区切りができたので、SELECT * FROM A WHERE menu_no IN をしたのですが......ダメでした。(>_<)もう少し頑張ってみます。

2014/07/07 01:11:48
id:pogpi

POSTデータが取れれば、どちらでもいいと思います。noはint型じゃないなら、'001','002'にしなければいけません。

2014/07/07 06:04:26

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません