1 回答
TA贡献1804条经验 获得超3个赞
我认为你的问题的关键部分在这里:
我可以通过使用<input type="submit"... 并将值设置为 Wagon_ID 来轻松做到这一点,但我的问题是因为该值是 Wagon_ID,按钮上的文本也将变为 Wagon_ID 并且文本需要保持输入状态。
这种情况就是隐藏域的用武之地。不要将实际的表单数据包装在像按钮这样的 UI 元素中。像这样尝试:
echo '<form action="" method="post">
<textarea name="textarea" rows="8" cols="40"></textarea>
<input type="hidden" name="wagonID" value="'.$row['Wagon_ID'].'"/>
<input type="submit" class="button" name="enterText" value="Enter text" />
</form>';
并在 PHP 更改中
$wagon=$_POST['enterText'];
到
$wagon = $_POST['wagonID'];
PS 正如您所看到的,您可以通过在单引号内回显来自 PHP 的字符串来摆脱双引号的所有混乱转义,并且它更具可读性并且更不容易出错。
聚苯硫醚
警告:您的代码容易受到 SQL 注入攻击。您应该使用参数化查询和准备好的语句来帮助防止攻击者通过使用恶意输入值来破坏您的数据库。http://bobby-tables.com给出了风险的解释,以及一些如何使用 PHP / mysqli 安全地编写查询的示例。永远不要将未经处理的数据直接插入到您的 SQL 中。按照您现在编写代码的方式,有人可以轻松窃取、错误更改甚至删除您的数据。
- 1 回答
- 0 关注
- 129 浏览
添加回答
举报