gpt4 book ai didi

php - 使用 post 方法将 javascript 变量与其他 html 变量一起传递给 php

转载 作者:行者123 更新时间:2023-11-28 02:17:40 25 4
gpt4 key购买 nike

我想使用 POST 或 GET 方法将变量行与其他 HTML 表单变量一起发送到 post2.php

下面的代码出现错误:

Notice: Undefined index: row1 in C:\xampp\htdocs\PhpProject1\OtherUsableItems\post2.php on line 8

post1.php

 <html>
<head>
<SCRIPT language="javascript">
function addRow(tableID) {
var table = document.getElementById(tableID);

var rowCount = table.rows.length;
var row = table.insertRow(rowCount);

var colCount = table.rows[0].cells.length;

for(var i=0; i<colCount; i++) {
var newcell = row.insertCell(i);

newcell.innerHTML = table.rows[0].cells[i].innerHTML;
//alert(newcell.childNodes);
switch(newcell.childNodes[0].type) {
case "text":
newcell.childNodes[0].value = "";
break;
case "checkbox":
newcell.childNodes[0].checked = false;
break;
case "select-one":
newcell.childNodes[0].selectedIndex = 0;
break;
}
}
}
</script>
<script>
function count(tableId){
var rows = document.getElementById(tableId).getElementsByTagName("TR").length;

// window.location.href = "http://localhost/PhpProject1/OtherUsableItem /post2.php?rows=" + rows ;
// alert('Your table has ' + rows + ' rows.');
$.post("post2.php", { 'row' : rows}, function(rows){alert('rows'+rows);});
}
</script>

</head>
<body>
<form action="post2.php" method="post">

<TABLE id="dataTable" border="1">
<TR>
<TD> 1 </TD>
<TD> <INPUT name="n1[]"type="text" /> </TD>
<TD> <INPUT name="n2[]"type="text" /> </TD>
<TD><SELECT name="country[]" type="select-one">
<OPTION value="in">India</OPTION>
<OPTION value="de">Germany</OPTION>
<OPTION value="fr">France</OPTION>
<OPTION value="us">United States</OPTION>
<OPTION value="ch">Switzerland</OPTION>
</SELECT></TD>
</TR>
</TABLE>
<INPUT type="button" value="Add Row" onclick="addRow('dataTable');"/>
<button id="bt" onclick="count('dataTable');">Submit</button>
</form>

</body>
</html>

post2.php

<?php
$n1 = $_POST['n1'];
$n2 = $_POST['n2'];
$country = $_POST['country'];
echo $n1[0];
echo $n2[0];
echo $country[0];
$count = $_POST['row1'];
echo $count;
?>

最佳答案

尝试更改为'row'而不是'row1'

$n1 = $_POST['n1'];
$n2 = $_POST['n2'];
$country = $_POST['country'];
echo $n1[0];
echo $n2[0];
echo $country[0];
$count = $_POST['row'];
echo $count;

以后使用 print_r 查看 $_POST 的值.

除了上述说明之外,我还会删除第二个 <script>来自 post1.php 的标记,并将以下代码放入表单开头的正文中:

<form action="post2.php" method="post" >
<input id="rowNumber" type="hidden" name="row" value="1"/>

另外,将以下行添加到 function addRow :

    var rowNumber = document.getElementById('rowNumber');
rowNumber.value = parseInt( rowNumber.value ) + 1;

关于php - 使用 post 方法将 javascript 变量与其他 html 变量一起传递给 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16154927/

25 4 0
文章推荐: javascript - 如何使用链接方法 JavaScript 附加点击事件
文章推荐: javascript - 使用JQuery遍历DOM结构,找到位于HTML 'comment'之后的特定元素