我不确定这是一个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