質問編集履歴

1 不要箇所を削除、問題解決済み内容の記載

masa_f

masa_f score 6

2017/05/28 06:34  投稿

XAMPPのphpMyAdminでの文字化けについて
本件問題解決いたしました  
ありがとうございました  
 
=======================  
 
XAMPPでphpによるオブジェクト型のデータベース入出力ファイルを作りました
phpMyAdiminで入力しておいたデータベース情報を
読み込んで表示するだけの簡単なファイルです
一応動作確認ができたのですが
日本語を入れると文字化けしてしまいます
コード側ではUTF-8を指定したのですが
データベース内部(phpMyAdmin画面)や
Cromeでの表示は????と文字化けしました
コードにはあまり問題ないように思うのですが
以下の通りです
どなたかご教授いただけましたら幸甚です。
<?php
class connect {
 //定数の宣言
 const DB_NAME='pdo_test';
 const HOST='localhost';
 const UTF='utf8';
 const USER='root';
 const PASS='mAsauso1004';
 //データベースに接続する関数
 function pdo(){
   /*phpのバージョンが5.3.6よりも古い場合はcharset=".self::UTFが必要無くなり、array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES '.SELF::UTF')が必要になり、5.3.6以上の場合は必要ないがcharset=".self::UTFは必要になる。*/
   $dsn="mysql:dbname=".self::DB_NAME.";host=".self::HOST.";charset=".self::UTF;
   $user=self::USER;
   $pass=self::PASS;
   try{
     $pdo=new PDO($dsn,$user,$pass,array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES '.SELF::UTF));
   }catch(Exception $e){
     echo 'error' .$e->getMesseage;
     die();
   }
   //エラーを表示してくれる。
   $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
   return $pdo;
 }
 //SELECT文のときに使用する関数。
 function select($sql){
   $hoge=$this->pdo();
   $stmt=$hoge->query($sql);
   $items=$stmt->fetchAll(PDO::FETCH_ASSOC);
   return $items;
 }
 //SELECT,INSERT,UPDATE,DELETE文の時に使用する関数。
 function plural($sql,$item){
   $hoge=$this->pdo();
   $stmt=$hoge->prepare($sql);
   $stmt->execute(array(':id'=>$item));//sql文のVALUES等の値が?の場合は$itemでもいい。
   return $stmt;
 }
}
?>
  • XAMPP

    857 questions

    XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る