當前位置: 首頁> 函數類別大全> real_escape_string

real_escape_string

轉義字符串中的特殊字符以用於SQL 語句。
名稱:real_escape_string
分類:未分類
所屬語言:php
一句話介紹:轉義字符串中的特殊字符以用於SQL 語句。

定義和用法

real_escape_string() / mysqli_real_escape_string()函數轉義字符串中的特殊字符,以便在SQL 查詢中使用,同時考慮連接的當前字符集。

此函數用於創建可在SQL 語句中使用的合法SQL 字符串。假設我們有以下代碼:

 <?php

$lastname = "D'Ore" ;

$sql = "INSERT INTO Persons (LastName) VALUES (' $lastname ')" ;

// 此查詢將失敗,因為我們沒有轉義$lastname
if ( ! $mysqli -> query ( $sql ) ) {
  printf ( "%d Row inserted.\n" , $mysqli -> affected_rows ) ;
}

?>

實例

例子1 - 面向對像風格

轉義字符串中的特殊字符:

 <?php
$mysqli = new mysqli ( "localhost" , "my_user" , "my_password" , "my_db" ) ;

if ( $mysqli -> connect_errno ) {
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error ;
  exit ( ) ;
}

// 轉義特殊字符(如果有)
$firstname = $mysqli -> real_escape_string ( $_POST [ 'firstname' ] ) ;
$lastname = $mysqli -> real_escape_string ( $_POST [ 'lastname' ] ) ;
$age = $mysqli -> real_escape_string ( $_POST [ 'age' ] ) ;

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

if ( ! $mysqli -> query ( $sql ) ) {
  printf ( "%d Row inserted.\n" , $mysqli -> affected_rows ) ;
}

$mysqli -> close ( ) ;
?>

例子2 - 過程式風格

轉義字符串中的特殊字符:

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

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

// 轉義特殊字符(如果有)
$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 ) ) {
  printf ( "%d Row inserted.\n" , mysqli_affected_rows ( $con ) ) ;
}

mysqli_close ( $con ) ;
?>
同類函數
  • 返回當前FTP 連接的各種不同的選項設置。 ftp_get_option

    ftp_get_option

    返回當前FTP連接的各種不同的選項設置。
  • 返回文檔中聲明的命名空間。 getDocNamespaces

    getDocNamespaces

    返回文檔中聲明的命名空間。
  • 在XML 數據上運行XPath 查詢。 xpath

    xpath

    在XML數據上運行XPath查詢。
  • asXML() 的別名。 saveXML

    saveXML

    asXML()的別名。
  • 取得結果集中指定字段的類型。 mysql_field_type

    mysql_field_type

    取得結果集中指定字段的類型。
  • 以整數形式返回MySQL 服務器版本。 get_server_version

    get_server_version

    以整數形式返回MySQL服務器版本。
  • 連續獲取/發送文件(non-blocking)。 ftp_nb_continue

    ftp_nb_continue

    連續獲取/發送文件(non-blocki
  • 從結果集中取得一行作為關聯數組。 mysql_fetch_assoc

    mysql_fetch_assoc

    從結果集中取得一行作為關聯數組。
熱門文章