A. php連接資料庫插入數據後,mysql中查詢漢字字元亂碼
解決亂碼有幾種方式:
在讀取資料庫的時候設置連接編碼:mysql_query("set
names
utf8");
在讀取資料庫的php文件的頭部加:header("Content-type:text/html;charset=utf-8");
php文件不是utf8格式的編碼,需要轉化。用notpad++文本編輯器打開php文件,點擊菜單中的「格式」,查看是否是「以utf8
無bom格式編碼」,不是的話請轉成此格式。
html格式的在頭部加上:<meta
http-equiv="Content-Type"
content="text/html;
charset=utf-8"
/>
你看看你的是哪一種情況,都對比做的一下,還不行在問我。
B. php+mysql資料庫中文連接亂碼set names utf8 也不行!
MySQL會出現中文亂碼的原因不外乎下列幾點:
1.server本身設定問題,安裝時使用的字元集是latin1
2.table的語系設定問題(包含character與collation)
3.客戶端程式(例如php)的連線語系設定問題
正如您設定的一樣,建議使用UTF8,可兼容一切字元。以下為解決辦法:
一、避免創建資料庫及表出現中文亂碼和查看編碼方法
1、創建資料庫的時候:CREATE DATABASE `test`
CHARACTER SET 'utf8'
COLLATE 'utf8_general_ci';
2、建表的時候 CREATE TABLE `database_user` (
`ID` varchar(40) NOT NULL default '',
`UserID` varchar(40) NOT NULL default '',
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
即建庫和建表時都使用相同的編碼格式。
但是如果你已經建了庫和表可以通過以下方式進行查詢。
執行SET NAMES utf8的效果等同於同時設定如下:
SET character_set_client='utf8';
SET character_set_connection='utf8';
SET character_set_results='utf8';
二、避免導入數據有中文亂碼的問題
1:將數據編碼格式保存為utf-8
設置默認編碼為utf8:set names utf8;
設置資料庫db_name默認為utf8:
ALTER DATABASE `db_name` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
設置表tb_name默認編碼為utf8:
ALTER TABLE `tb_name` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
導入:LOAD DATA LOCAL INFILE 'C:\\utf8.txt' INTO TABLE yjdb;
2:將數據編碼格式保存為ansi(即GBK或GB2312)
設置默認編碼為gbk:set names gbk;
設置資料庫db_name默認編碼為gbk:
ALTER DATABASE `db_name` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
設置表tb_name默認編碼為gbk:
ALTER TABLE `tb_name` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
導入:LOAD DATA LOCAL INFILE 'C:\\gbk.txt' INTO TABLE yjdb;
註:1.UTF8不要導入gbk,gbk不要導入UTF8;
2.dos下不支持UTF8的顯示;
三、解決網頁中亂碼的問題
將網站編碼設為 utf-8,這樣可以兼容世界上所有字元。如果網站已經運作了好久,已有很多舊數據,不能再更改簡體中文的設定,那麼建議將頁面的編碼設為 GBK, GBK與GB2312的區別就在於:GBK能比GB2312顯示更多的字元,要顯示簡體碼的繁體字,就只能用GBK。
1.編輯/etc/my.cnf,在[mysql]段加入default_character_set=utf8;
2.在編寫Connection URL時,加上?useUnicode=true&characterEncoding=utf-8參;
3.在網頁代碼中加上一個"set names utf8"或者"set names gbk"的指令,告訴MySQL連線內容都要使用utf8或者gbk。
希望對你有所幫助。
C. PHP文件鏈接資料庫,插入數據,中文顯示亂碼,求高手解惑!!
你的資料庫是什麼編碼的?默認的latin編碼是不支持漢字的,改成utf8或者utf8mb4編碼,然後你的PHP文件編碼也使用utf8編碼
D. PHP怎麼連接MySQL
PHP連接mysql資料庫是PHP新手們必須要掌握的一項技能,只要掌握了PHP對資料庫進行增刪改查等操作,就可以寫出一些簡單且常見的程序。如留言表,新聞頁等。本篇文章主要給大家詳細介紹PHP連接Mysql資料庫的兩種常用方法。
下面我們通過具體的代碼示例來給大家詳細介紹兩種PHP連接mysql資料庫的方法。
mysqli連接資料庫和pdo連接資料庫。
第一種方法:使用mysqli連接mysql資料庫
代碼實例如下:
<?php
$host='127.0.0.1';
$user='root';
$password='root';
$dbName='php';
$link=new mysqli($host,$user,$password,$dbName);
if ($link->connect_error){
die("連接失敗:".$link->connect_error);
}
$sql="select * from admins";
$res=$link->query($sql);
$data=$res->fetch_all();
var_mp($data);
在經過一系列的連接操作後,我們再創建一個sql語句對其中數據表進行查詢檢驗。在上述代碼中,我們要先創建一些需要用到的變數,如資料庫用戶名、資料庫名密碼等。然後我們用面向對象的方式連接了名為php的資料庫。再通過if條件語句,connect-error方法判斷PHP連接資料庫是否成功。
這里我們先登錄phpmyadmin看看是否存在php資料庫,從下圖可以知道是存在php這個資料庫的。
PHP連接Mysql步驟以上就是關於PHP連接資料庫查詢數據的兩種常用方法詳解,更多相關教程請訪問php中文網mysql視頻教程,歡迎參考學習
E. php連接mysql資料庫的顯示中文問題
在每次連接資料庫之後,先執行一個查詢,告訴資料庫你要用的字元集。然後再進行插入,讀出等其他查詢。這個查詢的sql語句是:
$que='set names "gb2312"';
將$que作為查詢內容執行一個查詢。
其中的gb2312可以換成其他的,比如gbk,utf8等。
你以後再輸入的數據就可以正常顯示了。
F. PHP與mysql連接後顯示中文亂碼
我想知道一件事情。
你能不能把亂碼的情況發出圖片呢
你看看數據表是不是亂碼。
我挺想知道的
這樣我好判斷問題啊
如果你的亂碼是這樣
那麼你的動態代碼就這么寫:
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<!--聲明頭文件,嘿嘿header管不到這里啊。所以你得自己聲明了,字元集為utf8-->
<?php
header("Content-Type:text/html;charset:utf-8");
$link=mysql_connect("127.0.0.1","root","");
mysql_select_db("s",$link);
mysql_query("SETNAMESUTF8");
$sql="SELECT*FROMs";
$result=mysql_query($sql);
//print_r($row=mysql_fetch_array($result));
while($row=mysql_fetch_array($result))
{
echo"<tableborder='1'>";
echo"<tr><td>序號</td><td>學號</td><td>姓名</td><td>班級</td></tr>";
echo"<tr><td>".$row['id']."</td><td>".$row['xh']."</td><td>".$row['xm']."</td><td>".$row['bj']."</td></tr>";
echo"</table>";
}
?>
如果不行繼續追問就行了
記得貼出圖片啊。
G. php 怎麼連接中文名稱資料庫(SqlServer)
php頁面是utf八的編碼,然後命令發給資料庫的時候轉換下編碼,例子見圖
H. Php Dreamweaver 連接資料庫出現中文亂碼
這個問題提的很好,因為你的網頁編碼是gb2312。可以把網頁設成utf-8,在頁面屬性裡面。也可以把資料庫那頭全部gb2312。
I. php pdo 怎麼鏈接mysql 中文資料庫名
php pdo 怎麼鏈接mysql 中文資料庫名
: $dbh是new PDO() $dbh->exec("show tables");--獲取所有表# $dbh->exec("desc 表名");--查詢表結構
J. php連接資料庫用戶名不支持中文,怎麼解決
估計你資料庫中的那個中文用戶名讀出來就是亂碼,所以比對起來就是不一樣的.要設置資料庫默認字元集.