みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

phpMyAdmin MySQL

phpMyAdminについて

データベース名は英語以外に漢字で作る事もできますが漢字やカタカナで作っているという特殊な?方はいらっしゃるでしょうか?
(もし作ってる方がいらっしゃったら使用用途を教えて頂きたいです)

データベース初心者はphpMyAdminなどGUIなどでやった方が理解は深まると思いますか?
(ケースバイケースだとは思いますが...)




マニアックな質問なのですが
文字コードの指定で

utf-8-general-ci
utf-8-Unicode-ci

を比較した場合どちらがより汎用性のある文字コードだと思いますか?
(これもケースバイケースだとは思うのですが)



ソースコードについて

$pdo = new PDO("mysql:dbname=yoyaku_status2", "root");
$st = $pdo->query("SELECT * FROM yoyaku");
while ($row = $st->fetch()) {
$name = htmlspecialchars($row['status']);
echo "<tr><td>$name</td><td> </td></tr>";

でデータベースから引っ張って画面に出力したものが「???」と文字化けする場合

header('Content-Type: text/html; charset=UTF-8');

 mysql_query('SET NAMES utf8', $sql );
 
 php.ini

データベース作成時の文字コード指定

以外に文字化けする原因はありますでしょうか?


※全部答えなくて大丈夫です。
答えられる範囲で問題ありません。(データベース初心者でCUIはあまり使っていません)

投稿日時 - 2016-12-27 22:03:49

QNo.9273976

困ってます

質問者が選んだベストアンサー

utf-8-general-ci と utf-8-Unicode-ci の違いは、検索や並べ替えを行う際の正規化の違いが主です。
日本語を扱う場合は utf-8-general-ci の方が日本人の感覚にあった結果が得られますので、通常は utf-8-general-ci を使った方がいいでしょう。

> header('Content-Type: text/html; charset=UTF-8');
これは PHPが出力するHTMLの文字コード宣言ですので、PHPファイルの文字コードと合わせる必要があります。

文字化けですが、DBから抽出したデータの部分だけが文字化けしているのですか?
それともPHPファイルに書かれているHTML部分の日本語も文字化けしているのですか?

投稿日時 - 2016-12-28 09:44:50

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問