用「+」破我有一個查詢:CFQUERYPARAM在URL
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">;
標識是在MySQL中的一個整數,但上面的查詢返回的ID不是來自表,甚至沒有一個INTEGER,它似乎是一個隨機的BIGINT! 如果我刪除它的工作原理雖然CFQUERYPARAM ...
SELECT id FROM table WHERE field1='#URL.field1#'
AND field2='#URL.field2#'
AND field3='#URL.field3#';
字段1,字段2和字段3都是VARCHAR處理在數據庫中,但在URL它們含有「+」,例如 Field1=text+moretext
如果我從URL字符串中刪除「+」,它工作正常!我知道「+」是一個空格的表示形式,如果我實際上再次在URL中輸入一個空格,它就可以正常工作。只有當出現「+」時纔會打破。
我做錯了什麼?或者我該怎麼做,使URL爲「+」的工作使用「+」
這是否解釋了爲什麼查詢返回不同的結果與cfqueryparam,但? –
檢查我的編輯可能的解釋。 –
彼得,你爲什麼在他的問題中編輯了cfqueryparam標籤? –