Php Mysql查询中撇号的最佳实践

时间:2013-01-05 15:56:31

标签: php mysql apostrophe

当字符串中存在不匹配的“'”时,从php发送sql更新查询时,撇号可能会很痛苦。 克服这个问题的最佳做法是什么?

由于

2 个答案:

答案 0 :(得分:6)

PDO:

$stmt = $pdo->prepare('SELECT * FROM users WHERE username = :username');
$stmt->execute(array(':username' => $_GET['username']));

库MySQLi:

$query = $mysqli->prepare('SELECT * FROM users WHERE username = s');
$query->bind_param('s', $_GET['username']);

这些扩展具有内置函数,用于创建准备好的查询,使您可以毫无问题地使用引号和撇号。

答案 1 :(得分:1)

我认为最佳做法是使用预准备语句,但您也可以使用addslashes($string)stripslashes($string)函数。