1樓:萌態百出
如果設定了set names utf8還是亂碼的話,你需要看看資料庫的編碼格式了,亂碼產生的原因,是因為存放時的編碼和取出資料展示的編碼不一致,導致的不能正常顯示,你先檢視資料庫的編碼合適,存放資料庫開始檢查
2樓:匿名使用者
有如下四個步驟,都需要檢查下
借助 notepad++ 把 .sql 檔案的編碼格式改成 utf8替換 mysql 的 my.cnf 檔案 並加入指定字符集的語句使用終端命令重新匯入 .sql 檔案
各種重啟 清除瀏覽器快取
3樓:匿名使用者
首先你要檢查你得庫編碼如果你庫得編碼是gbk或者其他 即使你給它傳遞了編碼資訊也無濟於事
而庫編碼為utf-8 讀取出來亂碼
首先檢測文件編碼是否為utf-8無bom 或者utf-8bom型~如果也是那麼則給資料庫傳遞預設編碼為utf-8傳遞方式見php參考手冊裡mysql或mysqli介紹或者sql語句set names utf8
4樓:
mysqli_query($conn,'set names utf8');
5樓:行不行丶看自己
你可以在編輯器裡先設定好編碼格式
php連mysql資料庫編碼問題
6樓:匿名使用者
也許是資料庫的問題,我也遇到過,我用的是wampserver,介面的工具,直接點滑鼠就可能建成mysql資料庫,建成後匯入資料,查詢資料庫返回面而的是亂碼,我遇到的情況是這樣的:
1、建庫用gbk,如圖。
2、匯入表及資料時,預設是utf,此處要改成gbk就不是亂碼了,如第圖底頁面,如果是預設的或是其它的字符集,能匯入成功但是亂碼。另外直接把sql貼上到sql視窗,也不是亂碼。
希望能幫到你,呵呵~
7樓:匿名使用者
'db_charset'=>'utf-8',// 資料庫編碼預設採用utf8
改為'db_charset'=>'utf8',// 資料庫編碼預設採用utf8
php的資料庫編碼是utf8
8樓:宇宙大師之一
可以使用 mysql_query("set names 'utf8'"); 語句來設定要使用的資料編碼,它的意思是資料使用utf8編碼;
語法說明如下:
set names 'charset_name'
set names顯示客戶端傳送的sql語句中使用什麼字符集。
charset_name 要使用的字符集
例如:$con = mysql_connect(db_server, db_server_username, db_server_password) or die('can not connect server!'); //連線資料庫
mysql_select_db(db_database); //選擇資料庫
mysql_query("set names 'utf8'"); //設定要使用的字符集
9樓:匿名使用者
應該不是資料庫連線的問題.
在你的程式中頭上載入這麼一句:
header("content-type: text/html; charset=gb2312");
一般會解決此問題.
10樓:匿名使用者
function connect($host,$username,$pwd,$port="3306")
試試這樣行不行
php向mysql資料庫插入的utf8編碼的中文變成亂碼
11樓:虎爺可樂
**是沒發現問題了,看你的表字段是不是定義的 utf8 編碼了
12樓:審計拍
你這幾個函式是原生的php函式麼 貌似不是吧
php顯示mysql資料亂碼,字符集設定都是utf8,資料庫也是utf8,一直找不到問題在**,**見詳細,求大神
13樓:隴行
php+mysql的utf-8中文亂碼問題的解決方法
問題彙總:
1.mysql資料庫預設的編碼是utf8,如果這種編碼與你的php網頁不一致,可能就會造成mysql亂碼.
2.mysql中建立表時會讓你選擇一種編碼,如果這種編碼與你的網頁編碼不一致,也可能造成mysql亂碼.
3.mysql建立表時新增欄位是可以選擇編碼的,如果這種編碼與你的網頁編碼不一致,也可能造成mysql亂碼.
4.使用者提交頁面的編碼與顯示資料的頁面編碼不一致,就肯定會造成php頁面亂碼.
5.如使用者輸入資料的頁面是big5碼, 顯示使用者輸入的頁面卻是gb2312,這種100%會造成php頁面亂碼.
6.php頁面字符集不正確.
7.php連線mysql資料庫語句指定的編碼不正確.
使用mysql+php產生亂碼的原因都了解得很清楚了,那麼解決就不困難了.
針對不同問題的解決方法:
1.mysql資料庫預設的編碼是utf8,如果這種編碼與你的php網頁不一致,可能就會造成mysql亂碼.
修改資料庫編碼,如果是資料庫編碼不正確,可以在phpmyadmin 執行如下命令:
alter database 'test' default character set utf8 collate utf8_bin
以上命令就是將test資料庫的編碼設為utf8.
2.mysql中建立表時會讓你選擇一種編碼,如果這種編碼與你的網頁編碼不一致,也可能造成mysql亂碼.
修改表的編碼:
alter table 'category' default character set utf8 collate utf8_bin
以上命令就是將乙個表category的編碼改為utf8.
3.mysql建立表時新增欄位是可以選擇編碼的,如果這種編碼與你的網頁編碼不一致,也可能造成mysql亂碼.
修改欄位的編碼:
alter table 'test' change 'dd' 'dd' varchar( 45 ) character set utf8 collate utf8_bin not null
以上命令就是將test表中 dd的字段編碼改為utf8.
4.使用者提交頁面的編碼與顯示資料的頁面編碼不一致,就肯定會造成php頁面亂碼.
如果是這種情況容易解決,只需檢查下頁面,修改原始檔的charset即可.
5.如使用者輸入資料的頁面是big5碼, 顯示使用者輸入的頁面卻是gb2312,這種100%會造成php頁面亂碼.
這種情況也是修改頁面charset即可.
6.php頁面字符集不正確.
為了避免php頁面亂碼的發生,php頁面開始第一句
header("content-type:text/html; charset=utf-8");
//強行指定頁面的編碼,以避免亂碼
7.php連線mysql資料庫語句指定的編碼不正確.
在連線資料庫的語句中.
mysql_connect('localhost','user','password');
mysql_select_db('my_db');
mysql_query("set names 'utf8'"); //select 資料庫之後加多這一句
php插入mysql資料庫中文變成亂碼 問號
14樓:℡媙の綺
去mysql裡面設定,不要在php裡設定mysql的編碼,亂碼肯定就是編碼問題無疑,推薦你先把mysql裡面表的編碼改好,然後再把php的編碼改好,這樣就應該沒問題了。
15樓:匿名使用者
欄位和表結構改成 utf8_general_ci 編碼
php中怎麼實現點選按鈕然後從MYSQL中刪除對應行的資料
比如現在我想傳到admin.php 頁面 傳遞的資料是 id 22 page 1 不需要這麼煩的吧 刪除 在admin.php頁面 用 id get id 就可以得到id的值 page同理 無重新整理操作,可以用jquery.ajax來操作。快下班了,就簡單地寫一段給你試試。假設你的刪除按鈕是 這裡...
兄弟連php就業前景怎麼樣,兄弟連PHP就業前景怎麼樣
時光荏苒,不知不覺學習php已經乙個月了.乙個月的時間讓我學會了很多,也收穫了很多 在來這裡參加php培訓班之前,我自學了乙個多月php,天天在琢磨課本上的那些看不懂的 照著書上寫了很多 可測試執行,總是報錯,可又不知道自己錯在什麼地方。心裡非常焦躁,也受到了打擊。後來經朋友的介紹千峰教育的課程是以...
如何用php在mysql的日期型資料中寫入NULL
插入mysql insert into test name intime values njdel null query ok,1 row affected 0.01 sec 修改mysql update test set intime null where name njdel limit 1 q...