我需要一些PHP的帮助。我对这种语言很新,虽然我在Wamp上使用它来建立一个网站,它应该在每一行显示一个带有ID的表和一个提交按钮,单击时,应该只显示该特定行的信息。我提出的语法有一个问题,它显示所有行的信息,而不是单击的一行。代码如下:
<?php
print "<table>";
表标题
print "<tr>";
print "<th>ID</th>";
print "<th>Click to View Row Info</th>";
print "</tr>";
表格内容(5行中的ID和按钮)
for ($i=1; $i<=5; $i++){
print "<tr>";
print "<form method=\"post\" action=\"Popup.php\">";
print "<td>";
print "<input name=\"$i\" type=\"text\" value=\"";
echo $i;
print "\"/>";
print "</td>";
print "<td>";
print "<input type=\"submit\" name=\"submit\" value=\"View Row\" /></form>";
print "</td>";
print "</tr>";
}
Popup.php显示代码段
$sub=$i;
for ($i=0; $i<=$sub; $i++){
print "The ID for this row is: ";
echo $i;
}
?>
Popup.php是一个单独的文件,它接收表单变量并显示它。如果我能得到一些帮助,我将非常感激。如果对我的问题有任何疑问,请随时告诉我。
答案 0 :(得分:0)
表单需要在循环之外(并且也应该在tbale之外) 另外,更改输入名称,如下所示 所以这个
print "<form method=\"post\" action=\"Popup.php\">";
for ($i=1; $i<=5; $i++){
print "<tr>";
print "<td>";
print "<input name=\name[$i]\" type=\"text\" value=\"";
echo $i;
print "\"/>";
print "</td>";
print "<td>";
print "<input type=\"submit\" name=\"submit\" value=\"View Row\" /></form>";
print "</td>";
print "</tr>";
}
然后在popup.php中将其更改为
foreach($_POST['name'] as $key=>$value)
print "The value for $key is: $value";
答案 1 :(得分:0)
首先,为ID
的输入元素的name attribute
使用常量
print "<input name='val' type=\"text\" value=\"";
然后更改此行
$sub=$i;
到
$ sub = $ _POST ['val'];