a.html       -------------utf-8格式保存<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<form name=frm1 action=b.php method="post">
<b>添加</b>
<table>
<tr><td>用户名</td><td><input type=text name=tx_name></td></tr>
<tr><td>密码</td><td><input type=text name=tx_pwd></td></tr>
<tr><td align=right><input type=submit value=提交></td></tr>
</table>
</form>
b.php
<?
$mysql_host='localhost';
$mysql_username='root';
$mysql_password='123456';
$mysql_db='test';
$sys_data_conn=mysql_connect("$mysql_host","$mysql_username","$mysql_password");
$sys_data=mysql_select_db("$mysql_db") or die(mysql_error());$strtemp=$_POST[tx_name];///////////入库时,有汉字就乱码;此处必须按下面这样写,进入数据库的tx_name值才能不乱码
//$strtemp=iconv("utf-8","gb2312",$_POST[tx_name]);$str="insert into st_user(sta_name,sta_pwd) values('$strtemp','".md5($_POST[tx_pwd])."')";
mysql_query($str) or die($str);echo "<script>this.location='mng.php';</script>";
?>数据库
st_user、字段都表是utf-8格式问题:
$strtemp=$_POST[tx_name];///////////入库时,有汉字就乱码;此处必须按下面这样写,进入数据库的tx_name值才能不乱码
//$strtemp=iconv("utf-8","gb2312",$_POST[tx_name]);汉字为什么还要用iconv转一次码,入库后才能保证不是乱码?