, хотя я понимаю, почему mysql_real_escape_string требует активного подключения mysql для экранирования различных строк, я надеялся на следующее:
какой-то способ вручную (э-э, терминология здесь, возможно, «статически» будетправильный термин) поместите кодировку в mysql_real_escape_string, чтобы не требовалось активное соединение с БД для запуска mysql_real_escape_string.
, так как некоторые люди могут спросить, почему мы хотим mysql_real_escape_string без активного соединения, причина проста:
a) construct query (this is where the mysql_real_escape_string takes place)
b) create hash (md5, md4, sha1, crc32, choose your poison) from said query
c) check cache (memcached) for hash created in step b
d) query cached in memcached -> return cached results -> terminate script
c) query NOT cached in memcached -> connect to mysql -> cache result to memcached + return result
, как вы можете видеть из вышеприведенного, потому что хэш запроса создается до проверки кэша / подключения к БД, если это необходимо ... mysql_real_escape_string происходит ДО создания соединения БД.
вся цель этого состоит в том, чтобы, если мы смогли выполнить «запрос всей страницы» исключительно из обращений к кешу, просто не нужно было подключаться к mysqld.period.
Теперь у нас есть большой набор запросов, в которых соединение db выполняется только для выполнения mysql_real_escape_string.это не нужно.
итак, чтобы подвести итог:
нам нужен способ БЕЗОПАСНО экранировать строки mysql (значения POST и GET, поэтому он должен быть безопасным на 100%) без созданиядБ соединение.
спасибо.