Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysqli_real_escape_string

作者:发光男神   发布日期:2025-03-11   浏览:297

<?php
// 创建数据库连接
$mysqli = new mysqli("localhost", "username", "password", "database");

// 检查连接是否成功
if ($mysqli->connect_error) {
    die("连接失败: " . $mysqli->connect_error);
}

// 用户输入的数据
$user_input = "O'Reilly";

// 使用 mysqli_real_escape_string 函数转义特殊字符
$safe_input = mysqli_real_escape_string($mysqli, $user_input);

// 执行 SQL 查询
$query = "SELECT * FROM books WHERE author = '" . $safe_input . "'";

// 输出查询语句,仅用于演示
echo $query;

// 关闭数据库连接
$mysqli->close();
?>

解释说明:

  1. 创建数据库连接:使用 new mysqli() 创建一个到 MySQL 数据库的连接。
  2. 检查连接是否成功:如果连接失败,输出错误信息并终止脚本。
  3. 用户输入的数据:模拟用户输入的数据,这里假设用户输入了包含单引号的字符串 "O'Reilly"
  4. 转义特殊字符:使用 mysqli_real_escape_string() 函数对用户输入进行转义,以防止 SQL 注入攻击。该函数会将特殊字符(如单引号)转换为安全的形式。
  5. 执行 SQL 查询:构建并执行 SQL 查询语句。
  6. 关闭数据库连接:在完成所有操作后,关闭数据库连接。

通过这种方式,可以确保用户输入中的特殊字符不会破坏 SQL 语法或导致 SQL 注入攻击。

上一篇:mysql time类型

下一篇:mysql 判断表是否存在

大家都在看

mysqlavg函数保留小数

mysql经纬度距离计算

存储过程mysql

mysql with语句

mysql时间加减

brew 启动mysql

unsigned在mysql中是什么意思

mysql 插入更新

mysql.user

python mysql update

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站