【发布时间】:2019-07-27 14:55:08
【问题描述】:
我有一个将其内容发送到数据库的文本区域。大多数内容都可以像 HTML 和 javascript 一样正常发送。我想用下面的形式写一些 PHP:
$data = $_POST['stuff'];
以上在数据库中被缩写为:
$data = $_POST[
我允许数据库中包含 300 个或多个字符,并尝试了不同的数据库排序规则,例如 latin1_swedish_ci、utf8_unicode_ci 和 utf8_bin,但均未成功。
一个单独的 PHP 页面处理插入
INSERT INTO t values ('line_text');
行文本变量抓取文本区域的内容并将它们发送到插入语句。
【问题讨论】:
-
请说明您如何将信息添加到数据库中。我的猜测是您没有使用参数化查询和/或正确转义您的输入
-
在此之前只有一个问题,如果我使用准备好的语句会解决问题吗?
-
很可能,是的,假设字符串的转义是导致问题的原因。如果没有看到代码,我不确定是什么导致了问题。但老实说,您应该在所有情况下都使用准备好的语句和参数,以防止 SQL 注入攻击。所以不管它是否解决了这个问题,无论如何都是你需要做的事情