在PHP中的foreach循环中使用更新SQL查询
我正在尝试创建一个显示多个用户数据的表。然后可以编辑和更新表中的数据。以下是表格布局方式的示例:在PHP中的foreach循环中使用更新SQL查询,php,mysql,sql,foreach,sql-update,Php,Mysql,Sql,Foreach,Sql Update,我正在尝试创建一个显示多个用户数据的表。然后可以编辑和更新表中的数据。以下是表格布局方式的示例: echo "<form action=AdminUpdateLecInfo.php method=post>"; while ($return = mysql_fetch_assoc($result)) { $phonenumber = "$return[PhoneNumber]"; $number = str_pad($phonenumber, 1
echo "<form action=AdminUpdateLecInfo.php method=post>";
while ($return = mysql_fetch_assoc($result)) {
$phonenumber = "$return[PhoneNumber]";
$number = str_pad($phonenumber, 11, "0", STR_PAD_LEFT);
echo " <tr class='data'>
<input type='hidden' name='id'".$return['ID']."'' value= '".$return['ID']."' />
<td class = 'title'><input class = 'title' type='text' name='title'".$return['ID']."'' value= '".$return['Title']."' /></td>
}
echo "</table>
<input class='submit' type='submit' value='Update Info' />
</form>
我遇到的问题是,我需要将“.$return['ID']”添加到每个输入字段的名称中,以便不是所有用户的详细信息都使用相同的值进行更新。我不确定是否需要围绕此查询应用foreach循环,以便它应用于每个用户并更新其详细信息。但是,目前更新查询不起作用,可能是因为post方法没有正确地从表单中获取值。您的问题是字段的名称,请使用:
$return_id = $return['ID'];
echo "
<tr class='data'>
<td class = 'title'>
<input type='hidden' name='id$return_id' value='$return_id' />
<input class='title' type='text' name='title$return_id' value='$return_id' />
</td>
</tr>";
$return\u id=$return['id'];
回声“
";
在进行mysql更新之前,请执行
var\u dump($\u POST)代码>,将向您显示HTTP POST参数的内容,以便您可以查看它们是什么以及如何在查询中使用它们。您必须将文本字段的名称用作数组,以便可以迭代数组
name='title'".$return['ID']."'
name='id'".$return['ID']."'
请,在您编写任何更多的SQL接口代码之前,您必须仔细阅读以避免严重的错误。另外,mysql\u query
不应在新应用程序中使用。这是一个不推荐使用的接口,将从PHP的未来版本中删除。一个现代的替代品。像这样的指导会帮助你避免犯这样的错误。
name='title'".$return['ID']."'
name='id'".$return['ID']."'