我不確定這是一個php-,filemaker,mysql或odbc驅動程序問題。如何獲得正確的字符編碼mysql和filemaker之間
出於安全原因,我當前php webform的輸入字段將特殊字符轉換爲十六進制代碼(例如:#變爲'
)。此十六進制代碼保存在數據庫中,並且也會以Filemaker11的十六進制代碼形式顯示。這不是我想要的。 我怎樣才能確保特殊字符將顯示爲它應該是?
反過來(從filemaker到db),插入特殊字符時不會進行轉換。
我怎樣才能確保一切都會一致?
親切的問候,吉榮
你是什麼意思「出於安全原因」?做這種轉換不會有助於安全。無論如何,誰或是在做什麼? – Ariel
哦,你的意思是百分比編碼?像空間變成%20? PHP自動解碼它們,儘管你也可以手動完成。他們沒有轉換爲安全性,他們被轉換,因爲他們不能被放在一個網址。我想你需要給我們更多的細節 - 例如輸出結果如何,源代碼,等等。 – Ariel
字符如「,」#「被轉換爲十六進制。我認爲這與安全有關。 插入到DP中的過濾變量是: $ insert_voornaam = filter_var($ _ POST ['voornaam'],FILTER_SANITIZE_STRING); 之後,將會準備插入: $ stmt-> bindParam(':voornaam',$ insert_voornaam,PDO :: PARAM_STR); 並執行: $ stmt-> execute(); – Jroen