在编写程序过程中,遇到各种各样的问题,有些问题感觉很奇葩,比如,在表单数据上传的过程,sql语句没有问题,因为把语句直接copy到mysql的sql语句中,执行是没有任何问题,可是,通过php程序执行中,就直接过程掉了上传文件名中的汉字部分,这个问题固本困扰了我2天,后来我发现,原因在数据上传过程,我的表单中的汉字编码是GBK,而上传的时候是utf8,而我又对表单中特殊字符做了过滤,直接就导致了数据中汉字被过滤掉了。
mysqli_query($connect_id,"set names GBK");
$res=mysqli_query($connect_id,$sql);