表单传值:
用$_POST和$_GET不会显示出乱码,但是请看以下的HTML原码:Array
(
[0] => 1
[1] => ?
[2] => 0
[3] => [email protected]
[4] => ?
[5] => 127.0.0.1
[6] => 2007-12-09 17:47:02
)以上有两个问号,是Mysql数据库字段内中文内容,我晕,调了好久.....以下是PHP原码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><?php
//echo $_POST['name'].'<p>'.$_POST['sex'].'<p>'.$_POST['email'].'<p>'.$_POST['info'];
$mysql_server_name="localhost";
$mysql_username="qwf";
$mysql_password="1234";
$mysql_database="mydb";
$ip=getenv('REMOTE_ADDR');
//error_reporting(E_ALL);
$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
//$sql="INSERT INTO `mydb`.`qbooks` (`id` ,`name` ,`sex` ,`email` ,`info` ,`ip` ,`time_at` )VALUES (NULL , '$_POST['name']', '$_POST['sex']', '$_POST['email']', '$_POST['info']', '$ip', NOW( ) )";
$sql="INSERT INTO `mydb`.`qbooks` (`id` ,`name` ,`sex` ,`email` ,`info` ,`ip` ,`time_at` )VALUES (NULL , '".$_POST['name']."', '".$_POST['sex']."', '".$_POST['email']."', '".$_POST['info']."', '$ip', NOW( ) )";
mysql_select_db($mysql_database,$conn);
$result=mysql_query($sql);
$id=mysql_insert_id();
?>
<?php
$sql="SELECT * FROM Qbooks";
$conn=mysql_connect( $mysql_server_name,$mysql_username,$mysql_password);
$result=mysql_db_query($mysql_database,$sql,$conn);
while( $row=mysql_fetch_row($result))
{
?>
<table width="89%" height="164" border="1" cellpadding="0" cellspacing="5" bordercolor="#0099FF">
<tr>
<td width="15%" height="31" align="right">姓名:</td>
<td colspan="2" align="left"><?=$row[1]?> </td>
<td width="70%">文章内容:</td>
</tr>
<tr>
<td width="15%" height="27" align="right">性别:</td>
<td colspan="2" align="left"><?=$row[2]?></td>
<td width="70%" rowspan="4" align="left" valign="top"><?=$row[4]?></td>
</tr>
<tr>
<td width="15%" height="28" align="right">客户IP:</td>
<td colspan="2" align="left"><?=$row[5]?></td>
</tr>
<tr>
<td width="15%" height="23" align="right">邮箱:</td>
<td colspan="2" align="left"><?=$row[3]?></td>
</tr>
<tr>
<td width="15%" height="23" align="right">留言时间:</td>
<td colspan="2" align="left"><?=$row[6]?></td>
</tr>
</table>
<hr>
<?php
//print_r($row);
}
mysql_free_result($result);
mysql_close($conn);
?>
</html>怎么样才能显示数组内的中文值,高手帮忙
用$_POST和$_GET不会显示出乱码,但是请看以下的HTML原码:Array
(
[0] => 1
[1] => ?
[2] => 0
[3] => [email protected]
[4] => ?
[5] => 127.0.0.1
[6] => 2007-12-09 17:47:02
)以上有两个问号,是Mysql数据库字段内中文内容,我晕,调了好久.....以下是PHP原码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><?php
//echo $_POST['name'].'<p>'.$_POST['sex'].'<p>'.$_POST['email'].'<p>'.$_POST['info'];
$mysql_server_name="localhost";
$mysql_username="qwf";
$mysql_password="1234";
$mysql_database="mydb";
$ip=getenv('REMOTE_ADDR');
//error_reporting(E_ALL);
$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
//$sql="INSERT INTO `mydb`.`qbooks` (`id` ,`name` ,`sex` ,`email` ,`info` ,`ip` ,`time_at` )VALUES (NULL , '$_POST['name']', '$_POST['sex']', '$_POST['email']', '$_POST['info']', '$ip', NOW( ) )";
$sql="INSERT INTO `mydb`.`qbooks` (`id` ,`name` ,`sex` ,`email` ,`info` ,`ip` ,`time_at` )VALUES (NULL , '".$_POST['name']."', '".$_POST['sex']."', '".$_POST['email']."', '".$_POST['info']."', '$ip', NOW( ) )";
mysql_select_db($mysql_database,$conn);
$result=mysql_query($sql);
$id=mysql_insert_id();
?>
<?php
$sql="SELECT * FROM Qbooks";
$conn=mysql_connect( $mysql_server_name,$mysql_username,$mysql_password);
$result=mysql_db_query($mysql_database,$sql,$conn);
while( $row=mysql_fetch_row($result))
{
?>
<table width="89%" height="164" border="1" cellpadding="0" cellspacing="5" bordercolor="#0099FF">
<tr>
<td width="15%" height="31" align="right">姓名:</td>
<td colspan="2" align="left"><?=$row[1]?> </td>
<td width="70%">文章内容:</td>
</tr>
<tr>
<td width="15%" height="27" align="right">性别:</td>
<td colspan="2" align="left"><?=$row[2]?></td>
<td width="70%" rowspan="4" align="left" valign="top"><?=$row[4]?></td>
</tr>
<tr>
<td width="15%" height="28" align="right">客户IP:</td>
<td colspan="2" align="left"><?=$row[5]?></td>
</tr>
<tr>
<td width="15%" height="23" align="right">邮箱:</td>
<td colspan="2" align="left"><?=$row[3]?></td>
</tr>
<tr>
<td width="15%" height="23" align="right">留言时间:</td>
<td colspan="2" align="left"><?=$row[6]?></td>
</tr>
</table>
<hr>
<?php
//print_r($row);
}
mysql_free_result($result);
mysql_close($conn);
?>
</html>怎么样才能显示数组内的中文值,高手帮忙
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Language" content="CHINESE" />
</head>
加这个。
如:<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 你这里用gb2312
数据库里也要gbk.的或gb2312就不会出现乱码了.在设计时就应该考虑了...
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Language" content="CHINESE" />
</head
加这个也不行 还是问号,
MySQL 字符集: UTF-8 Unicode (utf8) 还是不行啊,急~~~~~
2.数据库:MySQL 字符集: UTF-8 Unicode (utf8)
3.把页面用记事本打开,另存为UTF-8
如果程序里调用了别的页面,别的页面也要转UTF-8
先用↑查看你的数据库的字符集。character_set_database若是utf8,
在mysql_connect(...)语句后面加上: mysql_query("set names utf8");
不行