當前位置: 首頁> 函數類別大全> 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 ) ;
?>
同類函數
  • 取得結果數據。 mysql_result

    mysql_result

    取得結果數據。
  • 返回每個進程的客戶端統計信息。 get_client_stats

    get_client_stats

    返回每個進程的客戶端統計信息。
  • 從對mysql_list_dbs() 的調用返回數據庫名稱。 mysql_db_name

    mysql_db_name

    從對mysql_list_dbs()的調
  • 打開一個安全的SSL-FTP 連接。 ftp_ssl_connect

    ftp_ssl_connect

    打開一個安全的SSL-FTP連接。
  • 返回遠程FTP 服務器的系統類型標識符。 ftp_systype

    ftp_systype

    返回遠程FTP服務器的系統類型標識符。
  • 把Unix 時間戳轉換為儒略日計數。 unixtojd

    unixtojd

    把Unix時間戳轉換為儒略日計數。
  • 從FTP 服務器上下載一個文件並保存到本地一個已經打開的文件中。 ftp_fget

    ftp_fget

    從FTP服務器上下載一個文件並保存到本地
  • 在FTP 服務器創建一個新目錄。 ftp_mkdir

    ftp_mkdir

    在FTP服務器創建一個新目錄。
熱門文章