我尝试使用PHP将数据从HTML文本字段更新到数据库。我想更新通知字段。我无法获取SQL查询的文本字段值。这是我的代码:
$result = mysql_query($query) or die (mysql_error()); // Run query
while($row = mysql_fetch_array($result)) { ?>
<tr><td><?php echo $row[0];?></td>
<td><?php echo $row[1];?></td>
<td><?php echo $row[2];?></td>
<td><?php echo $row[3];?></td>
<td><?php echo $row[4];?></td>
<td><input type="text" name="notifications" value="<?php echo $row[5];?>" size=13></td></tr>
<?php
if (isset($_POST['save'])) {
for($i = 0; $i < $count; $i++) // For loop
{
$id=mysql_result($result,$i,"id"); // Get id from query
$notifications = $_POST['notifications'];
$update = "UPDATE testtable SET notifications = {$notifications[$i]} WHERE id = {$id}";
echo "$update<br>";
//mysql_query($update); // Run
}
答案 0 :(得分:0)
看起来noticifations字段可能是一个字符串,所以你需要用这样的引号来转义它:
$update = "UPDATE testtable SET notifications = '{$notifications[$i]}' WHERE id = {$id}";
您的代码对注入攻击非常开放,您应该使用准备好的语句并转移到PDO或msqli,以防止潜在的攻击。</ p>