php链接数据库设置utf8乱码

这里有一个链接数据库的类

在连接数据库的时候设置的编码为utf-8,结果插入汉字的时候为乱码。后来百度utf8和utf-8的区别终于找到了结果!

是在mysql中用utf8表示utf-8而已,就是指代一种编码。
在php中mysql_query(“set names utf-8”);因为mysql中定义的是utf8而不是utf-8,所以这条语句是执行不成功的,效果和mysql_query(“set names test”)一样,所以你存储和获得的mysql编码并没有改变。改为
mysql_query(“set names utf8”);就行了。

他大爷的!

QQ截图20140117170514

<?php
class ConnectionMySQL{
//主机
private $host="localhost";
//数据库的username
private $name="coderlif_tw0304";
//数据库的password
private $pass="sdck4nz8";
//数据库名称
private $table="coderlif_love";
//编码形式
private $ut="utf8";
//构造函数
function __construct(){
$this->ut=$ut;
$this->connect();

}

//数据库的链接
function connect(){
$link=mysql_connect($this->host,$this->name,$this->pass) or die ($this->error());
mysql_select_db($this->table,$link) or die("没该数据库:" click resources.$this->table);
mysql_query("set names utf8");
}

function query($sql, $type = '') {
if(!($query = mysql_query($sql))) $this->show('Say:', $sql);
return $query;
}
function fetch_array($query, $result_type = MYSQL_ASSOC) {
return mysql_fetch_array($query, $result_type);
}

function fetch_first($sql) {
return $this->fetch_array($this->query($sql));
}

function result_first($sql) {
return $this->result($this->query($sql), 0);
}

function show($message = '', $sql = '') {
if(!$sql) echo $message;
else echo $message.'<br>'.$sql;
}

function affected_rows() {
return mysql_affected_rows();
}

function result($query, $row) {
return mysql_result($query, $row);
}

function num_rows($query) {
return @mysql_num_rows($query);
}

function num_fields($query) {
return mysql_num_fields($query);
}

function free_result($query) {
return mysql_free_result($query);
}

function insert_id() {
return mysql_insert_id();
}

function fetch_row($query) {
return mysql_fetch_row($query);
}

function version() {
return mysql_get_server_info();
}

function close() {
return mysql_close();
}

//向$table表中插入值
function fn_insert($table,$name,$value){
$this->query("insert into $table ($name) value ($value)");
}
//根据$id值删除表$table中的一条记录
function fn_delete($table,$id,$value){
$this->query("delete from $table where $id=$value");
echo "id为". $id." 的记录被成功删除!";
}
}

$db = new ConnectionMySQL();

?>

转载请注明:码农生活-田伟博客 » php链接数据库设置utf8乱码

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

关闭菜单