0

プロジェクトにこのフォームがあり、ユーザーが必要なだけ多くのデータを入力して、このデータを mysql テーブルに保存できるようにしたいと考えています。私のphpコードでこれを処理する方法がわかりません。誰かが私を助けることができますか?

<form name="frm9" action="<?php echo $_SERVER['PHP_SELF'];?>" onsubmit="return checknull3();"  method="post" >
  Operator Name            <input type="text" name="msoname">   <br><br>
  Number of households    <input type="number" name="msohhs">   <br><br>
  <input type="submit"  value="Add more"> 
</form>

ユーザーが[さらに追加]ボタンをクリックしたときに、同じページにとどまり、テーブルにデータを渡すことを考えていました。次に、フォームをクリアして、さらにデータを追加しますか?

どうすればこれを実装できますか?

PS: 私の checknull 関数は null 入力をチェックするだけです (すべてのデータを入力する必要があります)。

4

2 に答える 2

3

これを行う通常の方法は次のとおりです。

  1. 「さらに追加」ボタンをクリックすると、javascript関数にフィールドを動的に追加させます
  2. 入力名を角かっこで登録します (つまりname="msoname[]")
  3. 通常のフォームを送信するのと同じようにフォームを送信します
  4. PHP で (配列になる) を反復処理し$_POST['msoname']て、入力されたすべてのフィールドを見つけます。
于 2013-06-14T15:41:47.000 に答える
0
<form id="frm9" name="frm9" action="<?php echo $_SERVER['PHP_SELF'];?>" onsubmit="return checknull3();"  method="post" >
  Operator Name <input type="text" name="msoname" id="msoname">   <br><br>
  Number of households    <input type="number" name="msohhs" id="msohhs">   <br><br>
  <input type="submit"  value="Add more"> 
</form>

<script type="text/javascript">
       function checknull3(){
           if($("#msoname").val() == '' || $("#msoname").val() == ''){
                 alert("Enter all values");
                 return false;
           }else{
              $("#fm9").ajaxForm();
              $("#msoname").val() = '';
              $("#msoname").val() = '';
        }
</script>   
于 2013-06-14T16:48:47.050 に答える