教えて下さい。
データを明細形式に一覧で表示させ、そこへ更新ボタンをそれぞれの行へ配置し、
ボタンが押されたら、その行の内容を別画面に表示させるような事をしたいと考えております。
その際に、単純なFORMのPOSTであれば、key関数を用いて何行目かという情報を取得
する事ができますが、以下のようなjavascriptを使った場合はどのような記述をすれば良いでしょうか?
◆ A.php
<script>
function window_open(){
window.open("about:blank","window_name","width=640,height=480,scrollbars=yes,menubar=yes,toolbar=yes,status=yes,directories=yes,location=yes,titlebar=yes");
document.f_od.target = "window_name";
document.f_od.method = "POST";
document.f_od.action="UPDATE.php";
document.f_od.submit();
}
</script>
*** 省略
for($count=0;$count<$row+1;$count++) {
print("<TR>\n");
print("<TD><input type='submit' name='input[$count]' value='詳細 onclick='window_open();'>\n");
print("</TD>\n");
print("</TR>\n");
}
◆ B.php
<?php
if (count($_POST['input'])>0){
$meisai_id=key($_POST['input']);
}
?>
上のループで作成した複数の詳細ボタンの中で、どの行が押されたか?をB.phpで取得したいです。
よろしくお願いします。
No.1
- 回答日時:
<input type='submit' name='input[$count]' value='詳細 onclick='window_open();'>
から飛んでくるなら
$meisai_id=key($_POST['input']);
で受けている「$meisai_id」がまさに押された行数では?
(カウンタが0から始まっているなら$meisai_id +1行目かもしれませんが)
yambejp様、ご回答ありがとうございます。
おっしゃる通り、$meisai_id=key($_POST['input']); で取得できると
思っていましたが、取得できないんです、、、
何がおかしいでしょうか、、、
あと、質問の中で、B.php と UPDATE.php は同一です。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
よくみたらtype=submitなのにonclickで処理しているんですね
formにちゃんと「f_od」というnameを振っているか、
inputというnameの要素が競合する書き方をしていないかチェックするくらいでしょうか?
以下のソースでためした範囲では問題なくボタンのkeyを返しているみたいです
<script>
function window_open(){
window.open("about:blank","window_name","width=640,height=480,scrollbars=yes,menubar=yes,toolbar=yes,status=yes,directories=yes,location=yes,titlebar=yes");
document.f_od.target = "window_name";
document.f_od.method = "POST";
document.f_od.action="hoge.php";
document.f_od.submit();
}
</script>
<form method="post" name="f_od" onclick="window_open()">
<?PHP
for($i=0;$i<5;$i++){
print $i.":<input type=\"submit\" name=\"input[{$i}]\" value=\"go\"><br>\n";
}
?>
</form>
<?PHP
if(isset($_POST["input"]) and is_array($_POST["input"])){
print key($_POST["input"]);
}
?>
yambejp様、ご回答ありがとうございます。
教えて頂いたように記述したところ正しく引き渡す事ができました。
但し、1点だけ教えて下さい。
submitの意味が正確に理解できていなくて申し訳ありませんが、以下の(1)は受け渡しが
できたものの、(2)に関してはできませんでした。
ボタンはあくまでも "button" で、javascript側でsubmit したらと思いましたが、うまく
動かず、、、、
このような記述ではまずいのでしょうか、、、、
初歩的な質問で申し訳ありませんが、教えて下さい。
よろしくお願いします。
◆ (1)
<script>
function window_open(){
window.open("about:blank","window_name","width=640,height=480,scrollbars=yes,menubar=yes,toolbar=yes,status=yes,directories=yes,location=yes,titlebar=yes");
document.fod.target = "window_name";
document.fod.method = "POST";
document.fod.action="RINGI_UPDATE.php";
}
</script>
<form name="fod" onclick="window_open();">
<?php
for($count=1;$count<$row+1;$count++) {
print("<TD><input type='submit' name=inputtest[$count] value='詳細' >\n");
}
?>
</form>
◆ (2)
<script>
function window_open(){
window.open("about:blank","window_name","width=640,height=480,scrollbars=yes,menubar=yes,toolbar=yes,status=yes,directories=yes,location=yes,titlebar=yes");
document.fod.target = "window_name";
document.fod.method = "POST";
document.fod.action="RINGI_UPDATE.php";
document.fod.submit();
}
</script>
<form name="fod" onclick="window_open();">
<?php
for($count=1;$count<$row+1;$count++) {
print("<TD><input type='button' name=inputtest[$count] value='詳細' >\n");
}
?>
</form>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPで画像の渡しが上手く行きま...
-
HTMLで前の画面に戻る時、入力...
-
phpでチェックボックスでの値の...
-
テキストボックスに初期値を入れる
-
phpでの複数選択チェックボック...
-
PHPの初心者です。現在チェック...
-
<input type="hidden" >で配列...
-
複数行のデータ一括更新に関して
-
PHP ボタンが押されたら処理を...
-
チェックボックスのvalueを連結...
-
入力フォーム→確認画面→送信画...
-
【PHPチェック】ラジオボタンが...
-
チェックボックスのvalueに変数...
-
IEで、フォームにたとえば
-
フォームの途中で追加するには
-
DBの値をチェックボックスに反...
-
チェックボックスによる検索
-
PHP+MySQLで複数のラジオボタン...
-
リストボックス 複数選択のデ...
-
PHPでクリックするたびに変数を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<input type="hidden" >で配列...
-
HTMLで前の画面に戻る時、入力...
-
PHPでユーザー情報を入力して簡...
-
PHP ボタンが押されたら処理を...
-
PHPとHTML+Xamppの掲示板で画像...
-
syntax error, unexpected '}' ...
-
検索時の選択内容を保持する方法
-
PHPでCookieを使った訪問回数に...
-
チェックボックスによる検索
-
フォームでのリセットを使う方法
-
PHPで画像の渡しが上手く行きま...
-
チェックボックスによる検索(...
-
フォームへの前回入力値をクリ...
-
フォームボタンを押すたびに数...
-
php mysql でチェックボックス...
-
PHPの関数実行
-
phpで分からないエラーが出てし...
-
PHPで、ボタンを押すと同じペー...
-
ラジオボタンをsessionで使いたい
-
入力フォーム→確認画面→送信画...
おすすめ情報