-3

ページの各セルにグリッドを作成しようとしていますが、単純な1行のフォームがあります。人が FieldA にデータを入力した場合、php で actionA を実行したいと思いますが、データが FieldF に入力された場合は actionF を実行したいと思います。これは、セルごとに php を作成し、それらすべての php ファイルをアップロードしなくても可能ですか?

または、各フォームで GET メソッドを実行して、フィールド名を表示せずにアクション URL の最後にデータを追加する方法はありますか (つまり、sample.com/somestuff/fieldname=fieldA の代わりに sample.com/somestuff/fieldA)。したがって、phpはまったく必要ありませんか?

4

2 に答える 2

0

何か試しましたか。コードを書いてみてください。打たれた場合は、ここにコードを貼り付けてください。誰かが助けてくれます..

私の意見では、なぜさまざまなフォームが必要なのか. n 個のテキスト ボックスを持つフォームを用意し、必要なタスクを実行するだけです。

于 2012-08-31T09:36:59.813 に答える
0

あなたの問題は私には少しあいまいです。でもやってみます。

私が設定するフォームで:

`method="post" action="<?php echo $PHP_SELF ?>"`

これにより、フォームがそれ自体に送信されます。次に、ページの上部で、次のようなことができます。

<?php
    if (isset($_POST["fieldA"]){
        performActionA();
    } else if (isset($_POST["fieldB"]){
        performActionB();
    }
    etc...
?>

それはあなたがやろうとしていることですか?PHPは、ユーザーとの対話の前にサーバー側で実行されることに注意してください。

それ以外の場合は、javascript を使用してフォームのアクション フィールドを変更できます。(未テスト)

<script type="text/javascript">
  function setAction(elt){
      var page = document.getElementById(elt).value;
      document.myform.action="sample.com/somestuff/"+page;
  }
</script>

<form id="myform" action="sample.com/somestuff/">
   <input type="text" name="text1" onchange="setAction('text1')" />
</form>
于 2012-08-31T09:35:53.013 に答える