PHP mysqli_real_escape_string() 関数

❮ PHP MySQLi リファレンス

文字列内の特殊文字をエスケープします:

<?php
$con=mysqli_connect("localhost","my_user","my_password","my_db");

// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

// escape variables for security
$firstname = mysqli_real_escape_string($con, $_POST['firstname']);
$lastname = mysqli_real_escape_string($con, $_POST['lastname']);
$age = mysqli_real_escape_string($con, $_POST['age']);

$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('$firstname', '$lastname', '$age')";

if (!mysqli_query($con,$sql)) {
  die('Error: ' . mysqli_error($con));
}
echo "1 record added";

mysqli_close($con);
?>

定義と用法

mysqli_real_escape_string() 関数は、SQL文で使用する文字列内の特殊文字をエスケープします。


構文

mysqli_real_escape_string(connection,escapestring);

パラメータ 説明
connection 必須。使用する MySQL 接続を指定する
escapestring 必須。エスケープする文字列。エンコードされる文字は NUL (ASCII 0), \n, \r, \, ', ", および Control-Z です。

技術内容
返り値: エスケープした文字列を返します
PHP バージョン: 5+

❮ PHP MySQLi リファレンス