Как гласит название, мне нужно избегать ввода пользователя при использовании bind_param () или это делается внутренне?
Спасибо.
Нет, вам не нужно избегать данных для защиты от SQL-инъекций при привязке параметров.
Это не освобождает вас от проверки данных.
При привязке параметров не выполняется экранирование (внутренне или иначе). Сформулирован оператор SQL с записями параметров, и значения для них передаются во время выполнения.
База данных знает, какие параметры и обрабатывают их соответственно, в отличие от интерполяции значений SQL.
Нет.
Чтобы процитировать это
http://mysql.lamphost.net/tech-resources/articles/4.1/prepared-statements.html
«Обычно, когда вы имеете дело с специальным запросом, вы должны быть очень осторожны при обработке данных, полученных от пользователя. Это подразумевает использование функций, которые позволяют избежать всех необходимых символов ошибки, таких как одинарная кавычка, двойная кавычка , и символы обратной косой черты. Это необязательно при работе с подготовленными операторами. Разделение данных позволяет MySQL автоматически принимать во внимание эти символы, и их не нужно избегать с помощью какой-либо специальной функции ».