xoopsとwordpressなどCMSと云われるwebアプリケーションのほとんどがmysqlなどのデータベースを使用している。長く使っているとそのテーブルの最適化が必要になる。そんなときに便利なのがフリーで提供される「MySQL GUI Tools」だ。データベースのメンテナンスにぜひインストールしておきたいソフトである。

http://dev.mysql.com/downloads/gui-tools/5.0.html

MySQL GUI ToolsはMySQL AdministratorとMySQL Query Browserに分かれていて

MySQL Administrator
ユーザーアカウント作成
データベース作成
テーブル設計
データベース・テーブルのメンテナンス

MySQL Query Browser
MySQLサーバーに対してクエリーの実行・確認ができるのが特徴だ。ただしこの機能だけならばNavicatが使いやすい。ただしフリーのNavicatはメンテナンスが出来ないので、相互に欠点を補いながらの利用がお勧めである。

Navicat Lite版 ダウンロード
MySQL運用・管理ツールであるNavicatの広範囲な教育機関、非営利団体、個人を対象として一部機能を制限した無償のMySQLデータベース管理ツールであり、製品版(Enterprise Edition/Standard Edition/教育版)のデータベース接続、テーブル設計・編集機能はそのままに、機能が一部制限された状態で、無償・無期限でご利用いただけるバージョンです。(by 株式会社スマートスタイル

ホダ塾バージョンxoopsで使用言語を「ja-utf8」にした場合、アクセスカウンター「まるかんた」をインストールしたら文字化けが起きた。

対策 : 可能なファイルをutf-8に変換した。さらに

admin/admin.php 92行目・109行目・440行目・551行目・715行目の
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

を修正したが検索キーワードの部分だけ解消しなかった。

そこで仕方なく

admin/admin.php 1062行目の下赤文字部分を修正

 

if($flag_ana_keyword)   
{
    print "<b>検索キーワード</b>";
   
    $tmp_ck = count($RefKey);
    if($tmp_ck)
    {
        print " ({$tmp_ck}種類 全{$total_keyhit}hit)";
        arsort($RefKey);
       
        print $ttag_o;
        $RefKeyIndex = array_keys ($RefKey);
       
        $tmpc = count($RefKeyIndex);
        for($i=0;$i < $tmpc ; $i++)
        {
            $key = $RefKeyIndex[$i];
//ここから
            $key_1 = mb_convert_encoding($key, "UTF-8", "auto");
            print $tr.$td."{$RefKey[$key]}</td><td nowrap>{$key_1}</td></tr>";
//ここまで
        }
        print $ttag_c;
    }
 

これで正しく表示された。

ホダ塾バージョンxoopsで使用言語を「ja-utf8」にした場合、テーマチェンジャーをインストールしたら文字化けが起きた

modules → theme_changer → languageフォルダ内

english
index.html
ja_utf8
japanese
portuguesebr
tchinese

ja_utf8フォルダを作成し japanese 内のファイルをコピーしてutf-8に変換する。

myblocksadmin が動きません。モジュールの権限設定は altsys から行います。


 

古いテーマを継続して使用している場合画像の回りこみができない場合がある。テーマフォルダのstyle.cssに下記を追加する。

/*-----画像の回りこみ-----*/
img.centered {
display: block;
margin-left: auto;
margin-right: auto;
}

img.alignright {
padding: 4px;
margin: 0 0 2px 7px;
display: inline;
}

img.alignleft {
padding: 4px;
margin: 0 7px 2px 0;
display: inline;
}

.alignright {
float: right;
}

.alignleft {
float: left
}

/*-----ここまで-----*/

 

予約フォームでPCクライアントと携帯クライアントで違うフォームを用意した。

以下のサイトを参考にしてみた。
PHPでPCサイトと携帯サイトの振り分け方
http://astrodeo.com/blog/archives/129

*********************index.php*****************************

<?php
//ユーザーエージェントの判別
function isKeitai() {
    //NTT DoCoMo
    if (preg_match("/DoCoMo/", $_SERVER['HTTP_USER_AGENT'])) return true;
    //旧J-PHONE〜vodafoneの2G
    if (preg_match("/J-PHONE/", $_SERVER['HTTP_USER_AGENT'])) return true;
    //vodafoneの3G
    if (preg_match("/Vodafone/", $_SERVER['HTTP_USER_AGENT'])) return true;
    //vodafoneの702MOシリーズ
    if (preg_match("/MOT/", $_SERVER['HTTP_USER_AGENT'])) return true;
    //SoftBankの3G
    if (preg_match("/SoftBank/", $_SERVER['HTTP_USER_AGENT'])) return true;
    //au (KDDI)
    if (preg_match("/PDXGW/", $_SERVER['HTTP_USER_AGENT'])) return TRUE;
    if (preg_match("/UP\.Browser/", $_SERVER['HTTP_USER_AGENT'])) return true;
    //ASTEL
    if (preg_match("/ASTEL/", $_SERVER['HTTP_USER_AGENT'])) return true;
    //DDI Pocket
    if (preg_match("/DDIPOCKET/", $_SERVER['HTTP_USER_AGENT'])) return true;

    return false;
}

//PCと携帯とで振り分ける
if(isKeitai() == false){
   header("Location: https://hostname.co.jp/xxxxxxxx/pc.php");
}else{
   header("Location: https://hostname.co.jp/xxxxxxxx/keitai.php");
}
?>