|
|
|
| Иногда тупо что-то делаешь ,а потом задумываешься а правильно ли это
речь пойдёт о применении mysql_real_escape_string() и mysql_escape_string()
что же лучше (выгоднее ) применять?
mysql_real_escape_string() делает в точности то же самое, что и mysql_escape_string()
отличие :
1. mysql_real_escape_string() экранирует символы в соответствии с кодировкой БД(кодировку соединения)
2. mysql_real_escape_string() проверяет установлено ли соединение с MySQL(если нет коннекта ,
то она не работает )
а теперь рассмотрим преимущество ли это?
1.при правильной настройке кодировки как БД ,как скрипта(php) и как соединения с бд (что надо делать и так всегда) mysql_escape_string()будет делать тоже самое ( выигрыша нет )
2. а теперь самое интересное ..чтобы проверить соединение с сервером (бд) mysql_real_escape_string() отсылает реальный запрос к серверу [ бд ]
так зачем же нужна эта функция если она делает тоже самое что mysql_escape_string() + ещё нагружает SQL сервер лишними запросами? | |
|
|
|
|
|
|
|
для: oliss
(01.08.2010 в 13:48)
| | а что за запрос к серверу она отсылает? | |
|
|
|
|
|
|
|
для: Trianon
(01.08.2010 в 13:50)
| | А как функция может проверить есть соединение с сервером или нет? | |
|
|
|
|
|
|
|
для: Trianon
(01.08.2010 в 13:50)
| | to Oliss:
mysql_info()
mysql_stat()
mysql_get_proto_info() | |
|
|
|
|
|
|
|
для: oliss
(01.08.2010 в 13:48)
| | > а потом задумываешься а правильно ли это
mysql_escape_string
Warning
This function has been DEPRECATED as of PHP 5.3.0. Relying on this feature is highly discouraged.
mysql_escape_string всегда работает со строкой, как если бы она была в кодировке Latin-1. Если кодировка другая, то гарантировать корректную обработку данных нельзя. | |
|
|
|