1、php/html文件编码与数据库编码不统一
网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、微信小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了巢湖免费建站欢迎大家使用!
2、连接数据库时没有设置连接编码,“set names 。。。”
3、数据库编码设置有问题
4、数据库字段编码设置有问题
5、php程序里面没有对相关的字段进行转码
可能需要修改数据库的配置
一般情况下我们在设计数据库的时候都会事先确定好要用的字符集,但当我们要使用以前的数据的时候,可能会遇到字符集不同的问题,字符集的修改不能通过alert database charest set *来直接修改,这样只是影响以后的数据,对已有的数据没有用,那怎么办那
我们模拟讲latin1字符集的数据库修改成GBK的字符集,
1,导出表结构:
mysqldump -uroot -p --default -character-set = gbk -d databasenamecreatetab.sql
-default-character-set=gbk 表示设置上面字符集连接 -d表示只导出表结构
2,手工修改createtab.sql中表结构定义中的字符集为新的字符集。
3,确保记录不在更新,导出所有记录
mysqldump -uroot -p --quick --no-create-info --extended-insert --default-chareacter-set=latina
databasenamedate.sql
--quick 该选项用于转存储大的表,--extended-insert 可以使转存文件更小,重载的时候加快速度,
--no-create-info不写重新创建每个转存储表的create table 语句,--default-character-set=latin1按照原有的字符集导出所有数据,这样导出的文件中,所有的中文都是可见的,保证不会出项乱码,
4,打开data.sql 将set names lation1修改为set names gbk;
5,使用新的字符集创建数据库,
create database databasename default charset gbk;
6,创建表,执行createtab.sql
mysql -uroot -p databasename createtab.sql
7,导入数据,执行data.sql,
mysql -uroot -p databasename data.sql
参考上面的方法试验下!~
没有移动指针
显示的代码应该这样写
?php
while($row=mysql_fetch_array($s))
{
echo "trtd $row[0] /td";
echo "td $row[1] /td/tr";
}
?
你这说白了,其实就是前后台的意思吧,你A用户进入的A1就是后台界面,B用户进的B1就是前台用户操作界面。
如果B用户不操作,你A用户查询就会显示A2界面,如果B用户操作,那么A用户刷新就会显示B2界面。
这个当然要用session,首先你要注册两个session变量,
一个是session A1,一个是session B1,这样两个session就可以操作两个用户。
当A1登录系统,检查B1的session是否存在,如果B1的session存在,那么就A2页面自动载入B1的页面数据,至于怎么实时操作,这个不属于当前问题的范畴。
如果B1session不存在即登出,或者未登录,那么检查A1的session,显示A2页面原有的内容即可。