當前位置: 首頁> 函數類別大全> 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 ) ;
?>
同類函數
  • 返回文檔中使用的命名空間。 getNamespaces

    getNamespaces

    返回文檔中使用的命名空間。
  • 發送一條MySQL 查詢。 mysql_query

    mysql_query

    發送一條MySQL查詢。
  • 把儒略日計數轉換為猶太曆法的日期。 jdtojewish

    jdtojewish

    把儒略日計數轉換為猶太曆法的日期。
  • 打開一個安全的SSL-FTP 連接。 ftp_ssl_connect

    ftp_ssl_connect

    打開一個安全的SSL-FTP連接。
  • 取得結果集中每個字段的內容的長度。 mysql_fetch_lengths

    mysql_fetch_lengths

    取得結果集中每個字段的內容的長度。
  • 上傳已打開的文件,並在FTP服務器上把它保存為文件(non-blocking)。 ftp_nb_fput

    ftp_nb_fput

    上傳已打開的文件,並在FTP服務器上把它
  • 清空libxml 錯誤緩衝。 libxml_clear_errors

    libxml_clear_errors

    清空libxml錯誤緩衝。
  • 返回元素的屬性/值。 attributes

    attributes

    返回元素的屬性/值。
熱門文章