三个函数:
1. addslashes($string):用反斜线援用字符串中的非凡字符' " \
$username=addslashes($username);
2. mysql_escape_string($string):用反斜杠本义字符串中的非凡字符,用于mysql_query()查问。
$username=mysql_escape_string($username);
3. mysql_real_escape_string($string):本义SQL语句中应用的字符串中的非凡字符,并思考到衔接确当前字符集,需求保障以后是衔接状态能力用该函数,不然会报正告。 没有本义%与_
$username=mysql_real_escape_string($username);
两种抉择:
1. 应用PDO
$stmt = $pdo->prepare('SELECT * FROM user WHERE name = :name'); $stmt->execute(array(':name' => $name)); foreach ($stmt as $row) { // do something with $row }
2. 应用mysqli
$stmt = $dbConnection->prepare('SELECT * FROM user WHERE name = ?'); $stmt->bind_param('s', $name); $stmt->execute(); $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { // do something with $row }
更多PHP相干常识,请拜访PHP中文网!
以上就是php三个函数、两种抉择避免sql注入的具体内容,更多请存眷资源魔其它相干文章!
标签: sql 注入 php开发教程 php开发资料 php开发自学
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
抱歉,评论功能暂时关闭!