У меня есть запрос:
SELECT id FROM table WHERE field1=<cfqueryparam value="#URL.field1#"
cfsqltype="cf_sql_varchar">
AND field2=<cfqueryparam value="#URL.field2#"
cfsqltype="cf_sql_varchar">
AND field3=<cfqueryparam value="#URL.field3#"
cfsqltype="cf_sql_varchar">;
Id - это INTEGER в MySQL, но вышеприведенный запрос возвращает Id, который не пришел из таблицы и даже не является INTEGER, кажется, это случайный BIGINT!
Если я удаляю CFQUERYPARAM, он работает, хотя ...
SELECT id FROM table WHERE field1='#URL.field1#'
AND field2='#URL.field2#'
AND field3='#URL.field3#';
Field1, Field2 и Field3 - все VARCHARS в базе данных, но в URL они содержат «+», например
Field1=text+moretext
Если я уберу "+" из строк URL, он будет работать нормально! Я знаю, что "+" представляет собой пробел, если я снова наберу пробел в URL, он будет работать нормально. Он ломается, только когда присутствует «+».
Что я сделал не так? Или что мне сделать, чтобы CFQUERYPARAM работал с "+" из URL