Php 如何使用输入和复选框更新mysql
使用此表单:从mp3中选择*aktif='0'Php 如何使用输入和复选框更新mysql,php,mysql,html,checkbox,Php,Mysql,Html,Checkbox,使用此表单:从mp3中选择*aktif='0' <form name="form" method="post"> <input readonly type="text" name="id" value="<?=$haciosman['id']?>" /> <input type="text" name="baslik" value="<?=$haciosman['baslik']?> <input type="checkbox" nam
<form name="form" method="post">
<input readonly type="text" name="id" value="<?=$haciosman['id']?>" />
<input type="text" name="baslik" value="<?=$haciosman['baslik']?>
<input type="checkbox" name="secilen[]" value="<?=$haciosman['id']?>">
<input type="submit" name="onay" value="Onayla" />
我可以为选中的每一行将aktif设置为1。但我也想更新巴斯利克!如何用php代码更新每个baslik 如果我理解正确,您希望这样做:
mysql_query("UPDATE mp3
SET
aktif = '1',
baslik = '" . mysql_escape_string($_POST['baslik']) ."'
WHERE id = '$zuha'");
但这与您的电脑中已有的类似:
现在唯一的区别是在循环中进行查询并使用不同的ID变量
我在你的原始问题中对你的代码的评论保持不变
附言:为了一点安全性而引入
更新:好的,我想我现在明白你的问题了。基本上,您希望为数据库中的每个条目创建一个输入字段集合,如下所示:
<form name="form" method="post">
<table>
<?php while($haciosman = ($query)):?>
<tr>
<td><input readonly type="text" name="id" value="<?=$haciosman['id']?>" /></td>
<td><input type="text" name="baslik[<?php echo $haciosman['id'] ?>]" value="<?=$haciosman['baslik']?> </td>
<td><input type="checkbox" name="secilen[]" value="<?=$haciosman['id']?>">
</tr>
<?php endwhile; ?>
</table>
<input type="submit" name="onay" value="Onayla" />
</form>
if (isset($_POST['onay'])) {
foreach ($_POST['secilen'] as $zuha) {
$olay = mysql_query("UPDATE mp3
SET
aktif = '1',
baslik = '" . mysql_escape_string($_POST['baslik'][$zuha]) ."'
WHERE id = '$zuha'");
}
}
更新2:
您应该认真阅读,按照本文中的链接进行操作,并大体上阅读官方文档,以了解如何使用PHP。Google站点:stackoverflow Sql injection.omg我知道它有注入功能,但这只是一个本地功能。不适用于publicFyi,读取非英语变量名确实很困难。至少让我的头受伤了。也许这就是为什么没有答案?@评论员和可能的回答者:也许他之前的问题有助于理解上下文:@Ronnie:也许你的例子应该反映你的真实代码。或者您应该参考原始问题,它似乎是重复的。是的,但这并不是更新每一行。它只更新了一行。我有三排。当我使用这个查询时,baslik正在复制。让我们换个词吧!巴斯利克的名字可以吗?我有三排!我想编辑3行的名称。当我单击“提交”时,3行内容相同name@Ronnie切斯特·林伍德:当然有,因为你只有一个名字输入字段。如果要每三个名称更新一次,则必须提供三个名称输入字段,类似于选择框@罗尼·切斯特·林伍德:我创造了一些类似的东西。看看我的最新答案并进行比较。最后!
if (isset($_POST['onay'])) {
foreach ($_POST['secilen'] as $zuha) {
$olay = mysql_query("UPDATE mp3
SET
aktif = '1',
baslik = '" . mysql_escape_string($_POST['baslik'][$zuha]) ."'
WHERE id = '$zuha'");
}
}