Аналог mysqli :: real_escape_string? - PullRequest
0 голосов
/ 24 января 2009

полоски ()? Это хромает и так 4.0. Что такое аналог mysqli :: real_escape_string версии 5.0, который удаляет все косые черты, добавленные для запросов SQL?

Есть еще вопросы:

  1. При попытке обновления записи и добавления одинарной кавычки в текстовое поле получается, что phpMyAdmin экранирует строку с одинарными кавычками вместо косых черт - например, одиночная кавычка экранируется как '' (2 одинарные кавычки) вместо \ '- какую функцию использует phpMyAdmin или это ее собственная? Итак, mysql поддерживает 2 подхода к экранированию строк, а именно косую черту и одинарные кавычки?

  2. Всегда ли я должен восстановить строку, выбранную из mysql? Потому что вы знаете, что это вставлено. Но я думал, что не должен.

Любые идеи, спасибо!

Ответы [ 3 ]

3 голосов
/ 24 января 2009

Если вы не хотите использовать PDO и используете mysqli, вам следует использовать подготовленные операторы, поэтому вам не нужно беспокоиться о экранировании кавычек с такими вещами, как mysql_real_escape_string_i_mean_it_this_time.

Более конкретно, вы можете позвонить mysqli-> prepare , чтобы подготовить ваш запрос. Вызовите mysqli_stmt-> bind_param , чтобы установить значения параметров. И вызовите mysqli_stmt-> execute , чтобы выполнить запрос.

3 голосов
/ 24 января 2009

Используйте PDO вместо любых расширений mysql[i] / pgsql / ....

Если вы просто хотите обратить вспять урон, нанесенный магическими цитатами, то stripslashes() - это именно то, что вы ищете.

1 голос
/ 24 января 2009

ini_set('magic_quotes_runtime', false);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...