echo "<form method='POST' action=''>";
$counter=0;
if( $row=mysql_fetch_array($result)){
mysql_data_seek($result,0);
while( $row=mysql_fetch_array($result))
{
$counter++;
echo "<tr>
<td>".$row['name']."</td>
<td> "?><input type="hidden" id="id" name="id[]" value=" <?php echo $row['id']?>"> <input id="txt_port" name="txt_port[]" type="text" class="required" title="Port. This is a required field" value=" <?php echo $row['Destination_port'] ?> "></td>
<?php
echo "<td><a onclick='return show_confirm();'><input name='update[]' class='button' type='submit' value='Update'></input></a></td></tr>";
if(ISSET($_POST["update"]) and $_SERVER['REQUEST_METHOD'] == "POST"){
$id=$_POST['id'];
$port=$_POST['txt_port'];
$menu=$_GET['Menu'];
echo $id[$counter];
echo $port[$counter];
$result=mysql_query("UPDATE protocols SET Destination_port=".$port[$counter]." WHERE id=".$id[$counter].";");
// header("Location: Overview.php?Menu=".$menu."&Overview=1");
}
}
echo "</form>";
我创建了一个简单的表,其中有3列,第一列是名称,第二列有一个文本框,其中包含一个数字(带有我需要的隐藏ID),最后一个是更新该特定行的按钮
最大的问题是,当我回显$ id [$ counter]和echo $ port [counter]时,这个愚蠢的计数器永远不会计数。我总是得到相同的数据!总共它循环了4次,但它给了我第一条记录的数据。
任何想法都可以提供帮助。
答案 0 :(得分:0)
你能否展示一下你的整个代码?我看到你有$ result变量,但我没看到你构建sql的时候。另外,强烈建议您使用mysqli或PDO,因为mysql_正在弃用。