我设置了MySQL的编码为utf8,浏览器从数据库读出数据在页面上却是乱码,怎么解决呢

我设置了MySQL的编码为utf8,浏览器从数据库读出数据在页面上却是乱码,怎么解决呢,第1张

中文乱码问题经常会出现

1、数据库、数据表、字段 编码格式要保持一致

2、如果在doc界面录入数据,要保持当前编码格式与数据表编码格式一致

3、php读取数据显示,要保持文件的编码格式、html页面的编码格式同数据库一致,编码格式为utf-8或gb2312或gbk

4、php连接数据库之后mysql_query('set names gbk')

你的问题应该是数据库编码格式不是utf-8,查看一下

从技术上而言,JavaScript是可以直接访问mysql数据库的,但浏览器出于安全考虑(因为这样一来数据库的登录信息就完全暴露在所有用户的眼里了,别人就可以绕开你的程序直接访问数据库,甚至可以任意增删改你的数据),都对这个功能进行了非常严格的限制(也就是说其实还是可以访问的,但必须把浏览器的安全等级调到最低最低!),所以这种需求在实际应用中很难实现。

这样就需要一个中间程序,放在网络服务器中,html(含JavaScript)向这个中间程序发送请求,由它去mysql数据库中获取数据,再把数据发送回html。这类似于点外卖,你在网络上点餐,跑腿小哥就会把你点的食物送到你手上。对于浏览器而言,发送请求和返回数据的过程都是安全的(对数据库的所有 *** 作都发生在网络服务器中,网页用户是看不到的),这样就没有限制了。

这个中间程序的开发语言(或者说架构)一般是PHP、ASP、ASPNET、JSP等,也就是通常所说的“后台程序”。

jQuery则是JavaScript的一个框架(或者说插件、函数库),它是把JavaScript的一些复杂的 *** 作封装成简单的、容易 *** 作的函数和对象,所以jQuery本质上还是JavaScript。如果把JavaScript比作普通的面条,那么jQuery就好比是方便面,它帮你把做面的一些关键步骤先做好了,然后你只需要几个简单的 *** 作就可以吃到嘴里了。

ajax则是JavaScript(含jQuery)向服务器的中间程序(即上面所说的)发送请求并处理返回数据的一种技术,可以实现网页未刷新的情况下实时动态更新网页上的数据。它实际上也仍然是包含在JavaScript范畴内的。

xml是网络间数据传输的一种数据格式,但现在更流行的则是json。

所以实际的网络数据访问流程是:

html+JavaScript(jquery)

↓↑

PHP(ASP、ASPNET、JSP)

↓↑

MySql

在这其中JavaScript的作用反而是次要的,它只是起到在数据访问的前后对数据进行加工、筛选的作用,甚至可以完全抛开js,直接利用表单提交来实现数据访问和展示的目的,即:

html+Form

↓↑

PHP(ASP、ASPNET、JSP)

↓↑

MySql

中文乱码问题经常会出现\x0d\1、数据库、数据表、字段 编码格式要保持一致\x0d\2、如果在doc界面录入数据,要保持当前编码格式与数据表编码格式一致\x0d\3、php读取数据显示,要保持文件的编码格式、html页面的编码格式同数据库一致,编码格式为utf-8或gb2312或gbk\x0d\4、php连接数据库之后mysql_query('set names gbk')\x0d\\x0d\你的问题应该是数据库编码格式不是utf-8,查看一下

html只能通过ajax接口跟后台数据库接口通信,然后取出来的数据在页面上显示。

以下是一个例子:

html文件suggesthtml:

<html>

<head>

<meta >

在数据库提取部分数据,在JSP上显示的做法如下:

思路:1、创建db连接 2、创建statement 3、执行查询 4、遍历结果并展示

完整代码如下:

<span style="font-size:12px;"><span style="font-size:14px;"><%@ page language="java" import="javasql,javaio,javautil"%>

<%@ page contentType="text/html;charset=utf-8"%>

<html>

<head>

<style type="text/css">

table {

border: 2px #CCCCCC solid;

width: 360px;

}

td,th {

height: 30px;

border: #CCCCCC 1px solid;

}

</style>

</head>

<body>

<%

//驱动程序名

String driverName = "commysqljdbcDriver";

//数据库用户名

String userName = "root";

//密码

String userPasswd = "szy";

//数据库名

String dbName = "studentmanage";

//表名

String tableName = "student";

//联结字符串

String url = "jdbc:mysql://localhost:3306/" + dbName + "user="

+ userName + "&password=" + userPasswd;

以上就是关于我设置了MySQL的编码为utf8,浏览器从数据库读出数据在页面上却是乱码,怎么解决呢全部的内容,包括:我设置了MySQL的编码为utf8,浏览器从数据库读出数据在页面上却是乱码,怎么解决呢、JavaScript获取mysql数据库里面的数据需要哪些技术的支持、我设置了MySQL的编码为utf8,浏览器从数据库读出数据在页面上却是乱码,怎么解决等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10160771.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存