首頁 >後端開發 >PHP問題 >php mysql 無法查詢中文名字怎麼辦

php mysql 無法查詢中文名字怎麼辦

藏色散人
藏色散人原創
2021-09-20 09:21:011673瀏覽

php mysql無法查詢中文名字的解決方法:1、保證MySQL和PHP的編碼一致;2、在php頁頭加上「header("Content-type: text/html; charset=utf -8");」。

php mysql 無法查詢中文名字怎麼辦

本文操作環境:Windows7系統、PHP7.1、Dell G3電腦。

php mysql 無法查詢中文名字怎麼辦?

1.保證MySQL和PHP的編碼一致

MySQL

修改整個資料庫的編碼格式

注意:如果資料不重要的話,可以直接使用更改資料庫的編碼格式,再重新建表格即可。 (此範例中的資料庫是test)

alter database test character set utf8

修改整張表的編碼格式

注意:如果資料是重要資料的話,執行下列程式碼把整張表編碼格式轉換成utf8即可(此例中的資料表是students)

alter table students convert to character set utf8

修改students 表中sname 欄位的編碼格式

注意:第一個sanme是要給表中的sname欄位修改編碼格式。

第二個sname varchar(64)是要修改的欄位名稱和欄位型別(一般和原表中一樣,不會做修改)

not null是修改sname不能為空的。 (可以選擇不加)

alter table students change sname sname varchar(64) character set utf8 not null;

也可以使用phpMyAdmin進入資料表

php mysql 無法查詢中文名字怎麼辦

或進入資料庫

php mysql 無法查詢中文名字怎麼辦

PHP

在php頁頭加上:

header("Content-type: text/html; charset=utf-8");  //注意:这一句前不能向页面输出任何内容

另外在html裡設定的是

2.取得搜尋框傳遞來的資訊後,加上單引號

搜尋框:

輸入名字:

搜尋

xxx.php:
$tofind = $_POST["userName"];
$sql = "SELECT * FROM user WHERE  name='$tofind';";
$result = $conn->query($sql);

即可實現查詢漢字字串

【至少我的成了。 。 】

推薦學習:《PHP影片教學

以上是php mysql 無法查詢中文名字怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn