2016-04-10 5 views
-1

検索されたクエリに応じて、HTMLページに複数の送信ボタンが動的に作成されます。特定のボタンをクリックすると、他のボタンと同じページが開きます。だから私は送信ボタンの名前を配列に割り当てている。私はどの送信ボタンがPHPを使用してクリックされたのかを特定する必要があります。基本的に私はクリックされた送信ボタンの配列インデックスを探したい。配列のサブミットボタンの名前とクリックされたボタンのインデックスを確認する

+0

送信ボタンがいくつあるかわかりません。送信ボタンの数は、SQLクエリによってフェッチされた行の数に完全に依存します。 – Tanu01

+0

クリックされた送信ボタンのIDを持つ非表示入力を使用できます。 – PinkTurtle

+0

どのくらい正確ですか?私は隠された入力について多くのアイデアを持っていませんか? – Tanu01

答えて

0

隠し入力を使用して、クリックされた送信ボタンを追跡することができます。

// First create an HTML hidden input 
<input id="the_clicked_id" type="hidden" name="the_clicked_id" value=""/> 

// It's a bit ugly, but all your submits would need an onclick event 
// and an ID. They are easily added with PHP tho 
<?php 
    for ($i = 0; $i < $some_length; $i++) { 
     echo "<input id=\"submit_$i\" name=\"submit_$i\" type=\"submit\" value=\"Submit\" onclick=\"return myId(this);\"/>" . PHP_EOL; 
    } 
?> 

// Javascript side 
myId = function (element) { 
    document.getElementById('the_clicked_id').value = element.id; 
    return true; 
} 

次に、あなたが答えを編集するために私が必要な場合は、私に教えてください

$clicked_id = $_POST['the_clicked_id']; 
// or 
$clicked_id = $_GET['the_clicked_id']; 

と、この新しい値PHP側(クリックされたボタンのIDを提出保持)にアクセスすることができます。

+0

SQL出力に応じて複数の送信ボタンを作成するためにforループを使用する必要があります。別の送信ボタンにどのように名前を割り当てるのですか? – Tanu01

+0

私がIDのためにしたのと同じように私は更新させてもらいました。 – PinkTurtle

+0

私はこれをPHPページに入力しました:<?php $ clicked_id = $ _POST ['the_clicked_id']; echo $ clicked_id; ?> Btこのエラーが発生しました:未定義のインデックス:the_clicked_id – Tanu01

関連する問題