如何在php中打印文本框值


how to print textbox value in php

在我的代码中,当在文本框中输入任何文本并单击add attribute按钮时,输入的值在页面上显示两次,一次在first row of table中,另一次在first row of second table中。现在的问题是,当我在second row of second table的另一个文本框中输入文本时,它应该显示输入的文本。但是它不能显示。

<script>
var i = 0;
document.getElementById('add-val').innerHTML='';
function insRow()
{
    i++;
    var x=document.getElementById('myTable').insertRow(-1)  
    var a=x.insertCell(-1)
    var txt=document.getElementById('add-val').value;
    a.innerHTML=txt;
// for <tr> of table    
    var row = document.getElementById("myRow");
    var newrow=document.getElementById("myRow1");
    var x = row.insertCell(-1);
    var y = newrow.insertCell(-1);
    x.innerHTML=txt; //+ '<br>' + 
    y.innerHTML='<input type="text" name="nm" />';
}
document.getElementById('add-val').innerHTML='';
</script>

,这是HTML代码。

<form method="post" name="form">
<input type="text" name="attr" id="add-val"> <input type="button" onClick="insRow()" value="Add Attribute">
<table width="27" height="17" id="myTable">    </table>
<table cellpadding="13px">
<tr id="myRow">   </tr>
<tr id="myRow1">      </tr>
</table>
<input type="submit" value="Add option" onClick="insRow()"/>
<?php 
if(isset($_POST['submit']))
{
$val= $_POST['add'];
echo $val;
}
?> 
</form>

应该是

   y.innerHTML='<input type="text" name="nm[]" />';

nm后的[]

 name="nm[]" 

用于将所有新生成的字段存储到数组中,然后可以通过$_POST

访问该数组。

你可以像这样访问....

    $val = $_POST['nm'];
    foreach($val as $v){
        echo $v; // display what user entered
     }
    // var_dump($val) will show you all the users seperate input for each field

HTML代码:

<form method="post" name="form">
    <input type="text" name="attr" id="add-val"> <input type="button" onClick="insRow()" value="Add Attribute">
    <table width="27" height="17" id="myTable">    </table>
    <table cellpadding="13px">
    <tr id="myRow">   </tr>
    <tr id="myRow1">      </tr>
    </table>
    <input type="submit" value="Add option" onClick="insRow()"/>
    <?php 
    if(isset($_POST['submit']))
    {
    $val= $_POST['nm'];
    echo $val;
    }
    ?> 
</form>

attr

中输入要打印的值的名称
$val= $_POST['attr'];