在PHP中与MySQL交互时,为了防止SQL注入攻击,通常需要对用户输入的数据进行转义处理。转义字符是一种特殊字符,用于表示那些具有特殊含义的字符,如单引号(')、双引号(")、反斜杠(\)等。
'O\'Reilly'
。mysqli_real_escape_string()
函数或PDO的预处理语句对用户输入的数据进行转义处理。mysqli_real_escape_string()
函数进行转义处理?$mysqli = new mysqli("localhost", "user", "password", "database");
$user_input = "O'Reilly";
$escaped_input = $mysqli->real_escape_string($user_input);
$sql = "SELECT * FROM books WHERE title = '$escaped_input'";
$mysqli->query($sql);
mysqli_real_escape_string()
?try {
$pdo = new PDO("mysql:host=localhost;dbname=database", "user", "password");
$stmt = $pdo->prepare("SELECT * FROM books WHERE title = :title");
$stmt->bindParam(':title', $user_input, PDO::PARAM_STR);
$user_input = "O'Reilly";
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
echo "Error: " . $e->getMessage();
}
请注意,随着技术的发展,建议使用更现代且安全的数据库访问方法,如使用ORM(对象关系映射)工具或框架提供的功能来处理数据库交互。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云