it seems the function changes the character encoding of the string.
I get utf-8 encoded string and my mysql database is set to utf-8 as well.
If i just write the data to the database it works perfectly fine, if i use this function, it changes the encoding and therefore stores the wrong characters.
Seems like a bug to me.
mysql_escape_string
(PHP 4 >= 4.0.3, PHP 5)
mysql_escape_string — Escapes a string for use in a mysql_query
Suggested alternatives
Use of this extension is discouraged. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API for more information. Alternatives to this function include:
Açıklama
$unescaped_string
)
This function will escape the unescaped_string,
so that it is safe to place it in a mysql_query().
This function is deprecated.
This function is identical to mysql_real_escape_string() except that mysql_real_escape_string() takes a connection handler and escapes the string according to the current character set. mysql_escape_string() does not take a connection argument and does not respect the current charset setting.
Bu işlevin kullanımı PHP 5.3.0'dan beri ÖNERİLMEMEKTEDİR ve PHP 6.0.0'da tamamen KALDIRILMIŞTIR. Bu işleve kesinlikle güvenmemelisiniz.
Değiştirgeler
-
unescaped_string -
The string that is to be escaped.
Dönen Değerler
Returns the escaped string.
Sürüm Bilgisi
| Sürüm: | Açıklama |
|---|---|
| 5.3.0 | This function now throws an E_DEPRECATED notice. |
| 4.3.0 | This function became deprecated, do not use this function. Instead, use mysql_real_escape_string(). |
Örnekler
Örnek 1 mysql_escape_string() example
<?php
$item = "Zak's Laptop";
$escaped_item = mysql_escape_string($item);
printf("Escaped string: %s\n", $escaped_item);
?>
Yukarıdaki örneğin çıktısı:
Escaped string: Zak\'s Laptop
Notlar
Bilginize:
mysql_escape_string() does not escape % and _.
Ayrıca Bakınız
- mysql_real_escape_string() - Escapes special characters in a string for use in an SQL statement
- addslashes() - Özel karakterlerin önüne tersbölü yerleştirir
- The magic_quotes_gpc directive.
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).
