モック作りもひと段落したので、
データベースの内容をPHPで表示してみることに挑戦。
実際にmysqlに簡単なテーブルを一個作ってみる。
———-
CREATE TABLE ~~~
———-
そして数行ダミー情報を入れる。
——-
INSERT INTO ~~~
——-
とりあえずsql文はダイジョブ。
そして、、これをPHPにてブラウザで表示してみる、、初めてのPHPですな。
拾ってきたサンプルコードそのままに、
自分の環境に関するところを変更してlocalhostで表示。
とりあえず出るとことは出た!
けど日本語が表示されない
もしくは文字化ける。
これに結構時間がかかった。
結果4日くらい引っ張った。UTF-8で統一するのに
ネットで調べてもみんなの解決方法が違う・・!
いろいろ調べた結果。
—————————————————————
■my.ini に以下を追加。
[mysqld]
・・
・・
character-set-server=utf8
skip-character-set-client-handshake
[mysqldump]
・・
default-character-set = utf8
[mysql]
・・
default-character-set=utf8
iniを触るなんて!これって触っちゃダメなファイルじゃないの??
と不安になりつつおそるおそる更新。
ここでも最初更新できないとか言われショックを受けるが
エクスプローラから権限を変えて変更できるようになった。
■現在の設定を確認
musql consoleで
show variables like ‘character_set%’;
を入力してみる。
↓が正解
私は最初なってなかったので
SET character_set_client=utf8;
SET character_set_results=utf8;
と打ち込んで一個ずつ個別にさらに修正。
■PHP側のMETA
としておく。
■mySQL:データベース作るとき。。
CREATE DATABASE データベース名 default character set utf8;
■mySQL:テーブル作るとき。。
CREATE TABLE テーブル名
カラム名1 型 ,
カラム名2 型 …
PRIMARY KEY (主キー名)
) default character set utf8;
■mySQL:日本語データを入れるとき!重要
せっかく設定を全部utf8に合わせたのに、
このままだとmysql consoleからは日本語が入れられない。
MySQL Query Browserなどのツールを使用するとインサートできる。
だけどmysql consoleでも日本語インサートしたい私。
その方法は、
mysql consoleを立ち上げたら必ず
SET NAMES cp932;
を打ち込む。
これで完了!
(または以下を打ち込むという手もあるらしい
SET character_set_client=sjis;
SET character_set_results=sjis;)
—————————————————————
ちゃんと日本語含めて
データベースの内容がブラウザで見れた
ちょっと進歩した自分に感動。
—–
コメント