查詢

cubrid_real_escape_string()函式—用法及示例

「 在一個字串中轉義單引號(')、雙引號(")、反斜線(\)以及NUL(ASCII 0)等特殊字元,以便安全地在CUBRID資料庫中使用 」


函式名:cubrid_real_escape_string()

適用版本:CUBRID >= 9.1.0

函式說明:cubrid_real_escape_string() 函式用於在一個字串中轉義單引號(')、雙引號(")、反斜線(\)以及NUL(ASCII 0)等特殊字元,以便安全地在CUBRID資料庫中使用。

語法:string cubrid_real_escape_string ( string $unescaped_string [, resource $conn_identifier ] )

引數:

  • unescaped_string:需要轉義的字串。
  • conn_identifier(可選):CUBRID連線識別符號。如果未提供,則使用上一個開啟的連線。

返回值:返回轉義後的字串,如果轉義失敗則返回 false。

示例:

$conn = cubrid_connect("localhost", 33000, "demodb", "dba", "");
if ($conn) {
    $name = "John O'Brien";
    $escaped_name = cubrid_real_escape_string($name, $conn);
    
    // 在SQL語句中使用轉義後的字串
    $query = "INSERT INTO users (name) VALUES ('$escaped_name')";
    $result = cubrid_execute($conn, $query);
    
    if ($result) {
        echo "使用者已成功插入!";
    } else {
        echo "插入使用者時發生錯誤:" . cubrid_error_msg();
    }
    
    cubrid_close($conn);
} else {
    die("連線資料庫失敗:" . cubrid_error_msg());
}

在以上示例中,我們建立一個CUBRID連線,然後使用 cubrid_real_escape_string() 函式來轉義使用者提供的姓名,並將轉義後的字串插入到資料庫表中。這樣可以防止由於未轉義的特殊字元引起的SQL隱碼攻擊。最後,我們根據插入操作的結果輸出相應的訊息。

請注意,為了正確使用 cubrid_real_escape_string() 函式,必須在連線到CUBRID資料庫之後呼叫該函式,因此需要先使用 cubrid_connect() 函式來建立連線。

補充糾錯
上一個函式: cubrid_query()函式
下一個函式: cubrid_result()函式
熱門PHP函式
分享連結