ホームページ  >  記事  >  バックエンド開発  >  php mysql が中国語の名前をクエリできない場合はどうすればよいですか?

php mysql が中国語の名前をクエリできない場合はどうすればよいですか?

藏色散人
藏色散人オリジナル
2021-09-20 09:21:011611ブラウズ

php MySQL は中国語名の解決策をクエリできません: 1. MySQL と PHP のエンコーディングが一貫していることを確認します。 2. "header("Content-type: text/html; charset=utf をヘッダーに追加します。 PHP ページ -8");"。

php mysql が中国語の名前をクエリできない場合はどうすればよいですか?

この記事の動作環境: Windows7 システム、PHP7.1、Dell G3 コンピューター。

#php mysql が中国語の名前をクエリできない場合はどうすればよいですか?

1. MySQL と PHP のエンコーディングが一貫していることを確認します

MySQL

データベース全体のエンコーディング形式を変更します

注 : データが重要でない場合は、データベースのエンコード形式を直接変更してからテーブルを再構築できます。 (この例のデータベースは test です)

alter database test character set utf8

テーブル全体のエンコード形式を変更します

注: データが重要な場合は、次のコードを実行してテーブル全体のエンコード形式を変換します。 table を utf8 に変換するだけです (この例のデータ テーブルは students です)

alter table students convert to character set utf8

students テーブルの sname フィールドのエンコード形式を変更します

注: 最初の手順は、エンコードを変更することです。テーブルの sname フィールドの形式。

2 番目の 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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。