我从服务器上删除了一系列业务服务,并希望以表格形式显示数据,以便可以对其进行编辑并将其发送到另一个页面。
我想为每个数据分配一个变量(即输入类型='文本'名称='服务$ c')并迭代$ c的值,以便每次都分配一个新值(例如.service1,service2等),这样当数据发布到下一页时,我可以通过这些变量名来检索它。
我发现,如果在while循环中放入“ for($ i = 1; $ i <20 $ i ++)”之类的内容,则数组中的每个数据位将打印20次,如果我将其取出在while循环中,while循环$ c每次都等于“ service1”。
我确实想出了一个解决方案,但我想知道它是否有点hackey ...它有用,但我想知道我是否可以做得更好。
//Create the form
echo "<form action='changeservices2.php' method='post'>";
//Print Out My Array
while ($result_ar = mysqli_fetch_assoc($result)) {
//Shorten the variable
$a=$result_ar['service'];
//Start at 1
$b=1;
//Iterate
$c = $b+$d;
echo "<input type ='text' name='service$c' value='$a' ><br>";
//Since the first variable is null, I needed to help change it
if (is_null($c)) {$c=1;}
$d=$c;
}
echo "<input type ='submit' value='submit' ><br>";
echo "</form>";
它有效,我只是想知道我是否缺少一个更优雅/更简单的解决方案
答案 0 :(得分:2)
使用数组样式名称:
<input type="text" name="service[]" value="$a">
然后$_POST['service']
将是一个可以循环的数组。