今天按照下的教程尝试了数据保存,开始的测试时候我录入的都是数字什么的都没什么问题。。后来我录入汉字了,就无法保存到数据库了,我在网上查了下也没有找到解决方法。。
我把我2个页面
提交页面
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<body>
<form name="form1" method="post" action="Message_Recive.php">
<input name="strContend" type="text" value="123">
<input type="submit" name="submit" value="提交">
</form>
</form>
</body>
</html>保存页面
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>无标题文档</title>
</head><body>
<?php
$strContend=$_POST['strContend'];  $strContend = trim($strContend);
//链接数据库$connect=mysql_connect("localhost","root","xianb2008") or die("Unable to connect database server!");
$sql="INSERT INTO `db_message`.`t_mess` (";
$sql=$sql."`intmessageID`,`strconnect`)";
$sql=$sql." VALUES (NULL,'".$strContend."');";
echo "<li/>".$sql;
//执行数据库操作,将数据写入$query=mysql_db_query("db_Message",$sql,$connect) or die("<li/>!!!!");echo "<li/>保存数据成功!";?>
</body>
</html>

解决方案 »

  1.   

    在插入数据库之前设置编码
    mysql_query('set names utf8');//或者mysql_query('set names gbk');等,这都要看你网页编码了,要和网页编码统一(最好)
      

  2.   

    插入数据库出现乱码的话,设置下数据库编码,一般都用utf8,你可以按照楼上的写就可以。
      

  3.   

    gb2312 gbk  utf8 都可以.
      

  4.   

    html页面编码最好采用charset=utf-8,便于通用,这样再把数据库的存储编码选为unicode型,打开数据库连接后再像楼上说的执行'set names utf8',是指页面与数据库进行数据传输时采用utf8编码。