在 MySQL 中存储评论和特殊字符或 RTF
Storing comments & special characters or RTF in MySQL
我有一个比较简单的问题。
我正在设计一个通过 PHP --> mysql 运行的评论系统,当我提交带有特殊字符的评论时,即。引号 [']... 它搞砸了查询。
显然我必须去除这些以防止注入和诸如此类的东西,但是在提交引号和其他特殊字符(如换行符)到数据库然后解析它以显示方式之间来回解析的最简单方法是什么它最初是写的? IE。我可以把一个段落放在几行下面..
.
在下面。数据库正在存储那些额外的换行符。是否有为此内置的 PHP 解析器,还是我必须以某种方式编写一个解析器?
PHP 扩展 PDO
做得很好,我重新制作了 PDO 并使其使用起来更简单,因为它可能有点复杂,但是可以找到教程并且我学会了一天左右的时间。
如果您想开始使用 PDO,您需要像这样建立连接:
$handler = new PDO("mysql:host=HOST;dbname=DATABASE_NAME", DATABASE_USERNAME, DATABASE_PASSWORD);
并且使用它,HOST 可以是示例 localhost
,DATABASE_NAME 很明显,用户名和密码我相信您可以弄清楚!
如果您想使用来自 $_GET['']
数组的查询,您可以通过执行以下操作来实现:
$query = $handler->prepare("INSERT INTO users (username, password) VALUES (:user, :pass);
$query->execute(array(
':user' => $_GET['username'],
':pass' => $_GET['password']
));
这里发生的是将用户名和密码安全地提供给查询,然后在$query->execute
语句中执行;无论 URL.
中是否有 '
或 "
如果您想了解更多关于 PDO 库的信息,请参阅 here
我有一个比较简单的问题。
我正在设计一个通过 PHP --> mysql 运行的评论系统,当我提交带有特殊字符的评论时,即。引号 [']... 它搞砸了查询。
显然我必须去除这些以防止注入和诸如此类的东西,但是在提交引号和其他特殊字符(如换行符)到数据库然后解析它以显示方式之间来回解析的最简单方法是什么它最初是写的? IE。我可以把一个段落放在几行下面..
.
在下面。数据库正在存储那些额外的换行符。是否有为此内置的 PHP 解析器,还是我必须以某种方式编写一个解析器?
PHP 扩展 PDO
做得很好,我重新制作了 PDO 并使其使用起来更简单,因为它可能有点复杂,但是可以找到教程并且我学会了一天左右的时间。
如果您想开始使用 PDO,您需要像这样建立连接:
$handler = new PDO("mysql:host=HOST;dbname=DATABASE_NAME", DATABASE_USERNAME, DATABASE_PASSWORD);
并且使用它,HOST 可以是示例 localhost
,DATABASE_NAME 很明显,用户名和密码我相信您可以弄清楚!
如果您想使用来自 $_GET['']
数组的查询,您可以通过执行以下操作来实现:
$query = $handler->prepare("INSERT INTO users (username, password) VALUES (:user, :pass);
$query->execute(array(
':user' => $_GET['username'],
':pass' => $_GET['password']
));
这里发生的是将用户名和密码安全地提供给查询,然后在$query->execute
语句中执行;无论 URL.
'
或 "
如果您想了解更多关于 PDO 库的信息,请参阅 here