PHP程序和MySql数据乱码问题原因及解决
PHP程序和MySql数据乱码问题原因及解决
乱码问题简单说就是数据库写入读取,网页文件,网页显示时几个环节的编码不一致造成的。
乱码问题
写入时:页面提取写入数据编码和写入数据库时编码不一致
读取时:读取后所用编码与数据库写入时不一致
显示时:编码与数据库读取后的数据不一致
很显然只有三者都统一才行:(以utf-8为例)
1:页面提交数据编码utf-8(这也可以算是显示页面编码),
2:数据库写入时编码:alter database db default character set ‘utf8’collate ‘utf8-general-ci’,
3:数据库读取时所用编码:mysql_query(“set names ‘utf8’”);
4:显示页面编码:
注:如果你从程序或是直接在phpMYadmin里插入中文还出现乱码现象的话,你不防按下面的操作试!!!
进入MYSQL命令行:
mysql> alter database you_dbname default character set 'utf8';
mysql> SET character_set_client='utf8';
mysql> SET character_set_connection='utf8'
mysql> SET character_set_results='utf8'
utf8和gbk之间的编码转换
function gb2utf($string) {
$out = iconv( "gb2312", "UTF-8" , $string);
return $out;
}
相关文档:
虽然很多人用mysql front, 但是个人觉得mysql还是命令行下比较好用,毕竟数据库在命令行下操作比较王道而且mysql完全免费。。
下面介绍一些mysql命令行下常用的命令,有一些数据库基础的,即使是第一次用mysql对照下面的命令操作也完全可以,如果我发现还有其它命令也是经常用到的我会陆续更新。。。
服务器:
1. 启动m ......
第一次采用MySQL作为业务应用的数据库,由于经验不够丰富,在安装数据库的时候选择了GB2312编码。
起先用的也算得心应手,然而后续发现了生僻字不能显示的情况,把我搞得焦头烂额。经过好几天的摸索、
学习,终于把问题解决了。记下解决步骤,与跟我一样的新手分享。
步骤一: 分析出现乱码的原因
由于GB2312字符集只收 ......
<?php
set_time_limit(0);
$url='http://item.taobao.com/auction/item_detail.htm?xid=0db2&item_num_id=4512430274&cm_cat=50000671&pm2=1';
$ch = curl_init();
$timeout = 10;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CU ......
PHP Code one: //php获取ip的算法
$iipp=$_SERVER["REMOTE_ADDR"];
echo $iipp; PHP Code two: //php获取ip的算法
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
echo $ ......
<?php
class main extends spController
{
function index(){
echo "<p align=center><h1>HIS基础数据维护</h1>";
echo "<p align=center><h2>科室字典</h2>";
$contentsurl=spUrl("main", "i ......