【发布时间】:2015-08-18 16:00:05
【问题描述】:
我正在尝试制作一个存储和检索比赛信息的 Web 应用程序。我正在使用 php 函数和索引循环动态创建文本输入。
代码如下:
<?php
function table_head()
{
if ( func_num_args() > 0 )
{
$args = func_get_args();
foreach($args as $value)
{
echo "<th>" . $value . "</th>";
}
}
}
function display_fields()
{
$i = 0;
$a = 19;
$name="hi";
while($i++ < $a)
{
array_push($numbers,$i);
if($i==1)
{
$name = "time";
} else if($i > 1 && $i < 19){
$name = "lap" + strval($i);
} else {
$name = "avgspd";
}
echo "<td><input type='text' size='7' name='" . $name . "'/></td>";
}
}
echo "<form action='' method='POST'>";
echo "<table><tr>";
table_head("Time","lap1","lap2","lap3","lap4","lap5","lap6","lap7","lap8","lap9","lap10","lap11","lap12","lap13","lap14","lap15","lap16","lap17","Avg Spd");
echo "</tr><tr>";
display_fields();
echo "</tr></table><br><input type='submit'/></form>";
?>
为什么文本字段的名称被称为“1”、“2”等而不是“lap1”、“lap2”?
有没有办法解决这个问题?如果有怎么办?
这是浏览器(Safari 8.0.7 OS X 版本)显示的源代码:
<form action='' method='POST'>
<table>
<tr>
<th>Time</th>
<th>lap1</th>
<th>lap2</th>
<th>lap3</th>
<th>lap4</th>
<th>lap5</th>
<th>lap6</th>
<th>lap7</th>
<th>lap8</th>
<th>lap9</th>
<th>lap10</th>
<th>lap11</th>
<th>lap12</th>
<th>lap13</th>
<th>lap14</th>
<th>lap15</th>
<th>lap16</th>
<th>lap17</th>
<th>Avg Spd</th>
</tr>
<tr>
<td><input type='text' size='7' name='time'/></td>
<td><input type='text' size='7' name='2'/></td>
<td><input type='text' size='7' name='3'/></td>
<td><input type='text' size='7' name='4'/></td>
<td><input type='text' size='7' name='5'/></td>
<td><input type='text' size='7' name='6'/></td>
<td><input type='text' size='7' name='7'/></td>
<td><input type='text' size='7' name='8'/></td>
<td><input type='text' size='7' name='9'/></td>
<td><input type='text' size='7' name='10'/></td>
<td><input type='text' size='7' name='11'/></td>
<td><input type='text' size='7' name='12'/></td>
<td><input type='text' size='7' name='13'/></td>
<td><input type='text' size='7' name='14'/></td>
<td><input type='text' size='7' name='15'/></td>
<td><input type='text' size='7' name='16'/></td>
<td><input type='text' size='7' name='17'/></td>
<td><input type='text' size='7' name='18'/></td>
<td><input type='text' size='7' name='avgspd'/>
</td>
</tr>
</table><br><input type='submit'/>
</form>
注意:我通过 safari 的 web 检查器找到的这段代码都在一行上,我将其格式化为这样便于您检查代码。
【问题讨论】: