首先,中文变问号肯定是编码设置问题。所以:
1、设置php文件为utf-8编码格式的。
2、设置数据库编码格式为utf8_general_ci。
3、设置数据库的表的编码格式为utf8_general_ci。
4、设置数据库的表的需要显示中文的字段的编码格式为utf8_general_ci。
5、最重要的一步,在php文件里的设置字符集为utf8,告诉mysql数据库把后面发送的sql语句使用指定的字符集来解析,并且返回的结果数据的字符集也是指定的字符集。作用就是保证客户端和数据库使用的编码一致,不至于出现乱码或数据丢失:mysql_query("SET NAMES'utf8'");
记住,不要加上以下两句,加上会变回乱码
// mysql_query("SET CHARACTER SET utf8");
// mysql_query("SET CHARACTER_SET_RESULT=utf8");
6、解决问题。