mysql_escape_string

(PHP 4 >= 4.0.3, PHP 5)

mysql_escape_stringDodaje znaki unikowe w łańcuchu znaków do użycia w instrukcji SQL

Ostrzeżenie

Ta funkcja została uznana za przestarzałą w PHP 4.3.0 i usunięta, wraz z całym oryginalnym rozszerzeniem MySQL, w PHP 7.0.0. W zamian użyj aktywnie rozwijanych rozszerzeń MySQLi lub PDO_MySQL. Zobacz też przewodnik MySQL: wybieranie API i stosowne FAQ aby uzyskać więcej informacji. Alternatywy dla tej funkcji to między innymi:

Opis

mysql_escape_string ( string $łańcuch_bez_znaków_unikowych ) : string

Ta funkcja doda znaki unikowe do podanego ciągu znaków, więc jego użycie w mysql_query() będzie bezpieczne. Ta funkcja jest przestarzała.

Ta funkcja jest identyczna z mysql_real_escape_string(), z tym, że mysql_real_escape_string() potrzebuje identyfikatora połączenia i korzysta obecnego zestawu znaków do zabezpieczenia ciągu. mysql_escape_string() nie przyjmuje parametru z identyfikatorem połączenia i nie respektuje obecnego ustawienia zestawu znaków.

Parametry

łańcuch_bez_znaków_unikowych

Ciąg znaków, do którego mają zostać dodane znaki ucieczki.

Zwracane wartości

Zwraca ciąg znaków z wstawionymi znakami ucieczki.

Rejestr zmian

Wersja Opis
5.3.0 Użycie funkcji wywołuje błąd E_DEPRECATED.
4.3.0 Ta funkcja została uznana za przestarzałą. W zamian użyj mysql_real_escape_string().

Przykłady

Przykład #1 mysql_escape_string() example

<?php
$item 
"Laptop Luke'a";
$escaped_item mysql_escape_string($item);
printf("Wynik: %s\n"$escaped_item);
?>

Powyższy przykład wyświetli:

Wynik: Laptop Luke\'a

Notatki

Informacja:

mysql_escape_string() nie wstawia znaków ucieczki przed % i _.

Zobacz też:

add a note add a note

User Contributed Notes 2 notes

up
8
PHPguru
9 years ago
You can use this function safely with your MySQL database queries if and only if you are sure that your database connection is using ASCII, UTF-8, or ISO-8859-* and that the backslash is your database's escape character. If you're not sure, then use mysqli_real_escape_string instead. This function is not safe to use on databases with multi-byte character sets.

The only benefit of this function is that it does not require a database connection.
up
-28
s dot marechal at jejik dot com
13 years ago
The exact characters that are escaped by this function are the null byte (0), newline (\n), carriage return (\r), backslash (\), single quote ('), double quote (") and substiture (SUB, or \032).
To Top