<table>
<tr>用户留言</tr>
<?php
$conn=mysql_connect("localhost","root","") or die("数据库连接失败");
$set=mysql_select_db("a1202200719",$conn)or die("数据库为空");
mysql_query("SET NAMES `GBK`");
$sql="SELECT * FROM msg";
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
?>
<tr>
<td><?php echo $row['id']?></td>
<td><?php echo $row['name']?></td>
<td><?php echo $row['content']?></td>
</tr>
<?php}
?></table>为什么本地的数据库明明有内容 却什么都没显示呢
<tr>用户留言</tr>
<?php
$conn=mysql_connect("localhost","root","") or die("数据库连接失败");
$set=mysql_select_db("a1202200719",$conn)or die("数据库为空");
mysql_query("SET NAMES `GBK`");
$sql="SELECT * FROM msg";
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
?>
<tr>
<td><?php echo $row['id']?></td>
<td><?php echo $row['name']?></td>
<td><?php echo $row['content']?></td>
</tr>
<?php}
?></table>为什么本地的数据库明明有内容 却什么都没显示呢
<tr>用户留言</tr>
<?php
$conn=mysql_connect("localhost","root","") or die("数据库连接失败");
$set=mysql_select_db("a1202200719",$conn)or die("数据库为空");
mysql_query("SET NAMES `GBK`");
$sql="SELECT * FROM msg";
$query=mysql_query($sql);
$tmp = array();
while($row=mysql_fetch_array($query)){
array_push($tmp, $row);
}foreach($tmp as $arr){
?>
<tr>
<td><?php echo $arr['id']?></td>
<td><?php echo $arr['name']?></td>
<td><?php echo $arr['content']?></td>
</tr>
<?php
}
?></table>
{
...
}
else
{
echo mysql_error();
}
我代码中是SET NAMES ·GBK·的 phpmyadmin的整理是 gbk_chinese_ci ,然后编码是UTF-8 。结果数据库内容里的中文成了乱码(其他的还是中文),请问这要怎么解决呢
第二,while($row=mysql_fetch_array($query)){ print_r($row);}如果没办法打印出任何信息,你要检查一下你的数据库信息,在后台命令行下测试:SELECT * FROM msg;是否有记录,如果有,看看数据库编码是够你设置的GBK。
header('content-type:html/text;charset:gbk');mysql_query('set names gbk');看看你的数据库编码是什么,上面代码改成对应的编码