<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>KennyQiのPHPメモと息抜きブログ</title>
    <link>http://kennyqi.com/</link>
    <description>Web制作 PHP開発のメモと息抜きブログ</description>
    <language>ja</language>
    <generator>Nucleus CMS v3.41</generator>
    <copyright>&#169;</copyright>
    <category>Weblog</category>
    <docs>http://backend.userland.com/rss</docs>
    <image>
      <url>http://kennyqi.com/nucleus/nucleus2.gif</url>
      <title>KennyQiのPHPメモと息抜きブログ</title>
      <link>http://kennyqi.com/</link>
    </image>
    <item>
 <title>CentOS 5.4(x86_64)にDELLのOMSA(OpenManage Server Administrator)をインストールしてみる</title>
 <link>http://kennyqi.com/item/161</link>
<description><![CDATA[DellサーバにはOMSA(OpenManage Server Administrator)というハードウェアの状態をみるソフトがついています。<br />
付属DVDにはRpmやインストーラスクリプトも入っています。<br />
が、このOMSAはWindows、RHEL、SUSEに対応とのことで、<br />
CentOSでは普通はインストールできません。。<br />
でも、CentOSはRedHatと完全互換を目指してるはずなので、いけるかもと調べてみると、<br />
CentOS5.3などでインストールしている人がいましたので、5.4でもチャレンジしてみました。<br />
意外と簡単にDellサーバ付属DVD内のインストーラスクリプトでインストールすることができました。<br />
サーバ機：Dell PowerEdge R300<br />
OS：CentOS5.4<br />
OMSA version 6.2.0 サーバ付属のDVDからインストール<br />
※参考サイトではDellサイトからOMSAのTarをダウンロードしてくる方法も紹介されていました。<br />
<br />
OSインストール時に下記環境をいれておきました。<br />
　デスクトップ環境：GNOME<br />
　アプリケーション：グラフィカルインターネット<br />
　開発：開発ツール<br />
　ベースシステム：X Window System<br />
　ベースシステム：ベース<br />
<br />
参考サイトを見ていて必要そうだったので、下記はyumで入れました。<br />
<div class="linux"><br />
# yum groupinstall "Development Libraries"<br />
# yum groupinstall "Legacy Software Support"<br />
</div><br />
<br />
OMSAのインストールスクリプトは、OSを判別しているとのことで、<br />
/etc/redhat-release を下記のように変更します。<br />
<div class="linux"><br />
# vi /etc/redhat-release<br />
CentOS release 5.4 (Final)<br />
↓<br />
CentOS release 5.4 (Final Tikanga)<br />
</div><br />
<br />
これだけでインストーラスクリプトを走らせてみたところ、<br />
警告とかでるけど、Rpmはインストールできた模様。<br />
付属DVDのReadmeにはログオフしてから再度ログインするように書いていますが<br />
再起動してから、ReadmeにもあるようにOMSAを起動します。<br />
<br />
次に、ブラウザから<br />
https://localhost:1311/<br />
にアクセスするとログイン画面がでてきました。<br />
CentOSのユーザでログインすると、<br />
ハードウェア情報にアクセスできるようになりました。<br />
<br />
ちなみに、このPowerEdge R300はホットスワップ対応ということで、<br />
RAIDカードSAS6iRがささっていています。<br />
BIOSからはこのカードの状況＝HDDがオンラインかどうかを確認できるのですが<br />
OS側からHddの状態を確認したい場合はこのツールで確認することができます。<br />
<br />
<br />
参考：<br />
<a href="http://satospo.sakura.ne.jp/blog_archives/tech/hardware/dell_omsa_centos.html">CentOSでDELL OpenManageを使う</a><br />
<a href="http://ssluser.com/blog/archives/237">CentOS5.3 にDell OpenManage Server Administrator をインストール</a><br />
<a href="http://www.sssg.org/blogs/naoya/archives/1423">DELLサーバのハードウェア RAID カードの状態を取得する方法</a><br />
Thanks!]]></description>
 <category>Linux</category>
<comments>http://kennyqi.com/item/161</comments>
 <pubDate>Tue, 16 Feb 2010 19:10:09 +0900</pubDate>
</item><item>
 <title>MySQLの接続数が多いときのチューニング</title>
 <link>http://kennyqi.com/item/159</link>
<description><![CDATA[データベースを使ったウェブサイトで、<br />
アクセス数が多いと、当然データベースへの接続数も多くなるかと思います。<br />
MySQLだとデフォルトの最大接続数は100接続までOKのようですが、<br />
接続を維持するキャッシュというのがあるようで、このサイズはデフォルトで0の模様。<br />
また接続維持時間がデフォルトは８時間になっているようです。<br />
ですので、アクセスがたくさんあると、<br />
接続ができなくなるので、このような設定をしました。<br />
<br />
とりあえず、MySQLにどれくらいの接続要求があったのか確認します。<br />
<div class="linux"><br />
[root@myhost ~]# mysqladmin -u root -p extended-status | egrep '(Max|Threads_)'<br />
Enter password: <br />
| Max_used_connections              | 101        |<br />
| Threads_cached                    | 0          |<br />
| Threads_connected                 | 59         |<br />
| Threads_created                   | 5225       |<br />
| Threads_running                   | 43         |<br />
[root@myhost ~]# <br />
</div><br />
最大接続数はSUPER権限ユーザのために１つ用意されているそうで<br />
Max_used_connectionsは101になっています。<br />
それぞれの値については下記[参考サイト]のThinkITのリンクに書かれています。<br />
<br />
とりあえず、こんな感じでチューニングしました。<br />
<br />
まず、max_connections は最大接続数。これを100から500に変更。<br />
<div class="linux"><br />
[root@myhost ~]# mysql -u root -p<br />
Enter password: <br />
Welcome to the MySQL monitor.  Commands end with ; or \g.<br />
Your MySQL connection id is 2949<br />
Server version: 5.0.45 Source distribution<br />
<br />
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.<br />
<br />
mysql> show variables like 'max_connections';<br />
+-----------------+-------+<br />
| Variable_name   | Value |<br />
+-----------------+-------+<br />
| max_connections | 100   | <br />
+-----------------+-------+<br />
1 row in set (4.97 sec)<br />
<br />
mysql> set global max_connections = 500;<br />
Query OK, 0 rows affected (0.00 sec)<br />
<br />
mysql> show variables like 'max_connections';<br />
+-----------------+-------+<br />
| Variable_name   | Value |<br />
+-----------------+-------+<br />
| max_connections | 500   | <br />
+-----------------+-------+<br />
1 row in set (0.00 sec)<br />
<br />
mysql> exit<br />
Bye<br />
</div><br />
<br />
次に、キャッシュの大きさを変更<br />
<div class="linux"><br />
[root@myhost ~]# mysql -u root -p -e 'SET GLOBAL thread_cache_size = 10'<br />
Enter password: <br />
</div><br />
続いて、接続維持時間を８時間から２分（120秒）に変更<br />
（もっと少なくてもいいと思う。ちなみに参考サイトでは15秒にしている）<br />
<div class="linux"><br />
[root@myhost ~]# mysql -u root -p -e 'SET GLOBAL wait_timeout = 120'<br />
Enter password: <br />
</div><br />
<br />
で、今回設定した値が反映されているか確認してみる。<br />
キャッシュの大きさ<br />
<div class="linux"><br />
[root@myhost ~]# mysql -u root -p -e 'select @@thread_cache_size'<br />
Enter password: <br />
+---------------------+<br />
| @@thread_cache_size |<br />
+---------------------+<br />
|                  10 | <br />
+---------------------+<br />
</div><br />
接続維持時間<br />
<div class="linux"><br />
[root@myhost ~]# mysql -u root -p -e 'show variables like "wait_timeout"'<br />
Enter password: <br />
+---------------+-------+<br />
| Variable_name | Value |<br />
+---------------+-------+<br />
| wait_timeout  | 120   | <br />
+---------------+-------+<br />
</div><br />
これだけしておけば、当分大丈夫じゃないかと思ってますが、<br />
さていかに。。<br />
<br />
[参考サイト] Thanks!<br />
<a href="http://1x4x9.net/2009/04/mysql-2.html">MySQLの最大接続数を変更する - 治療不可</a><br />
<a href="http://diary.godtomato.net/takefumi/2005/08/05_01.html">MySQL接続数多すぎ問題 - のみまくし日記</a><br />
<a href="http://www.thinkit.co.jp/free/article/0707/2/2/">はじめてのMySQLチューニング 第２回：負荷によるベンチマークを試す - ThinkIT</a><br />
<a href="http://www.sssg.org/blogs/naoya/archives/1160">MySQL の wait_timeout と thread_cache_size の関係</a><br />
<br />
余裕があれば、ThinkITで紹介されている「super-smack」という<br />
MySQLの負荷監視ツールも入れてみたいかな。]]></description>
 <category>Linux</category>
<comments>http://kennyqi.com/item/159</comments>
 <pubDate>Mon, 2 Nov 2009 07:11:01 +0900</pubDate>
</item><item>
 <title>MySQLでSQLインポートするも、ファイルサイズが大きくてできないとき</title>
 <link>http://kennyqi.com/item/157</link>
<description><![CDATA[MySQLでバックアップしたSQLを復元するときなど、<br />
SQLデータが大きくてインポートできないときはこうします。<br />
<br />
MySQLでSQLをインポートしようとすると、<br />
<div class="linux"><br />
Got a packet bigger than 'max_allowed_packet' bytes<br />
</div><br />
というエラーが出ることがあります。<br />
これは、インポートしようとするSQLデータが<br />
「max_allowed_packet」で設定した値より大きいというエラーです。<br />
<br />
ですので、この「max_allowed_packet」の値を変更してあげるとうまく行きます。<br />
変更するには、<br />
１）/etc/my.cnf で記述する<br />
２）mysql コマンドでインポートする際に明示的に指定する<br />
とうまくいきました。<br />
<br />
/etc/my.cnf を編集<br />
<div class="linux"><br />
[mysqld]<br />
max_allowed_packet=128M<br />
</div><br />
編集したらMySQLを再起動します。<br />
<br />
<div class="linux"><br />
# /etc/init.d/mysqld restart<br />
</div><br />
<br />
その後、MySQLにSQLデータをインポート。<br />
<div class="sql" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
mysql <span style="color: #808080; font-style: italic;">--max_allowed_packet=128M -u root -p dbname &lt; inport.sql</span><br />
&nbsp;</div><br />
<br />
これでエラーが出なくなりました。<br />
<br />
<br />
<br />
]]></description>
 <category>Linux</category>
<comments>http://kennyqi.com/item/157</comments>
 <pubDate>Mon, 2 Nov 2009 06:27:15 +0900</pubDate>
</item><item>
 <title>PHPからAjaxのjQueryを使う～Pquery</title>
 <link>http://kennyqi.com/item/150</link>
<description><![CDATA[PHPからAjaxのjQueryを簡単に使えるクラスがあったので紹介します。<br />
実はAjax、あまり詳しくないんですが、<br />
PQueryというクラスを利用するとPHPで簡単にAjaxが実現できました。いろいろと使い方があるようですが、簡単で使えそうなのが<br />
<br />
Ajaxなリンクをクリックしたら、<br />
そのページ内のdiv で囲った場所に<br />
PHPでechoしたデータが表示される<br />
<br />
というものです。使い方は<br />
<br />
PHP上で<br />
1)　pquery.phpをincludeして<br />
2)　クラス呼出<br />
<br />
HTML側で<br />
1)　jquery.jsを読込<br />
2)　PHPでlink_to_remoteを呼出<br />
　　引数は<br />
　　 link_to_remote(リンクさせるテキスト,jQuery用パラメータ配列)<br />
　　となります。<br />
<br />
という感じです。<br />
HTML側と書きましたがHTMLからPHPを呼び出してjQuery用のリンクを呼出します。<br />
ですので、ここでは同じPHPの中でHTMLも書いてみます。<br />
<div class="php" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
<span style="color: #000000; font-weight: bold;">&lt;?php</span><br />
<span style="color: #808080; font-style: italic;">// pquery.phpをinclude</span><br />
<span style="color: #b1b100;">include</span> <span style="color: #ff0000;">'lib/pquery.php'</span>;<br />
<br />
<span style="color: #808080; font-style: italic;">// クラス呼出</span><br />
<span style="color: #0000ff;">$pquery</span> = <span style="color: #000000; font-weight: bold;">new</span> PQuery<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;<br />
<span style="color: #0000ff;">$pquery</span>-&gt;<span style="color: #006600;">ujs</span> = <span style="color: #000000; font-weight: bold;">true</span>;<br />
<br />
<span style="color: #808080; font-style: italic;">// task パラメータがhogefuncのとき</span><br />
<span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$_GET</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'task'</span><span style="color: #66cc66;">&#93;</span> == <span style="color: #ff0000;">'hogefunc'</span> <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span><br />
&nbsp; hogefunc<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;<br />
<span style="color: #66cc66;">&#125;</span><br />
<br />
<span style="color: #808080; font-style: italic;">// jQueryで呼び出す関数</span><br />
<span style="color: #000000; font-weight: bold;">function</span> hogefunc<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span><br />
&nbsp; &nbsp;<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'JQueryが呼び出されました！'</span>;<br />
<span style="color: #66cc66;">&#125;</span><br />
<span style="color: #000000; font-weight: bold;">?&gt;</span><br />
&lt;html&gt;&lt;head&gt;<br />
&lt;!-- jQuery.jsを読込 --&gt;<br />
&lt;script src=<span style="color: #ff0000;">&quot;js/jquery.js&quot;</span> type=<span style="color: #ff0000;">&quot;text/javascript&quot;</span>&gt;&lt;/script&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;!-- jQuery呼び出しリンクをPHPで記述 --&gt;<br />
<span style="color: #000000; font-weight: bold;">&lt;?</span>=<span style="color: #0000ff;">$pquery</span>-&gt;<span style="color: #006600;">link_to_remote</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;表示&quot;</span>,<a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'url'</span>=&gt;<span style="color: #0000ff;">$_SERVER</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'PHP_SELF'</span><span style="color: #66cc66;">&#93;</span>.<span style="color: #ff0000;">'?task=hogefunc'</span>,<span style="color: #ff0000;">'update'</span>=&gt;<span style="color: #ff0000;">'#viewArea'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;?&gt;<br />
<br />
&lt;!-- ここにjQueryで呼び出された関数の結果が出力されます --&gt;<br />
&lt;div id=<span style="color: #ff0000;">&quot;viewArea&quot;</span>&gt;&lt;/div&gt;<br />
<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
&nbsp;</div><br />
<br />
という感じになります。<br />
link_to_remoteで出力されるリンクは下記のようになります。<br />
<br />
<div class="html" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
&lt;a href=&quot;#&quot; onclick='$.ajax({url: &quot;sample.php?task=formAll&quot;, success: function(response){$(&quot;#formArea&quot;).html(response);}, dataType: &quot;html&quot;}); return false;'&gt;表示&lt;/a&gt;<br />
&nbsp;</div><br />
<br />
<br />
リンクをクリックしても何も表示されないときは、<br />
PHP側で呼び出したfunctionにエラーがないかを確認してみてください。<br />
このlink_to_remoteで生成したリンクは、<br />
Ajax Eventsのsuccessが呼び出されるようで<br />
HTTP通信が成功したら呼び出され、失敗すると呼び出されないとのこと。<br />
<br />
また他にフォームのformタグを呼び出すものもあり、<br />
formで送信したパラメータを元にデータベースの結果を<br />
表示させるとかいうのもできます。<br />
このタグはまたの機会に。＾＾<br />
<br />
なお、PQueryのライセンスはMITライセンスとGPLライセンスを選べます。<br />
<br />
参考＆ダウンロード先：<a href="http://www.ngcoders.com/php/pquery-php-and-jquery">PQuery – PHP and JQuery</a><br />
<br />
参考：<a href="http://semooh.jp/jquery/cont/doc/ajax_event/">jQuery日本語リファレンス - Ajax/API/Ajax Events</a><br />
]]></description>
 <category>PHP</category>
<comments>http://kennyqi.com/item/150</comments>
 <pubDate>Sat, 26 Sep 2009 02:44:26 +0900</pubDate>
</item><item>
 <title>Perl CGI.pmでFormを作る</title>
 <link>http://kennyqi.com/item/145</link>
<description><![CDATA[PerlモジュールのCGI.pmでFormを作ったのでメモしておきます。<br />
Perl CGIモジュールでフォームを作ってみました。<br />
このCGIモジュールには、HTMLで使えるタグが結構そろっています。<br />
ここで紹介している以外にもタグ出力用のメソッドがあるようです。<br />
<br />
<div class="perl" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
<span style="color: #000000; font-weight: bold;">use</span> strict;<br />
<br />
<span style="color: #808080; font-style: italic;"># CGIモジュールを読み込み</span><br />
<span style="color: #000000; font-weight: bold;">use</span> CGI;<br />
<br />
<span style="color: #808080; font-style: italic;"># オブジェクト作成</span><br />
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$q</span> = CGI-&gt;<span style="color: #006600;">new</span>;<br />
<br />
<span style="color: #808080; font-style: italic;"># フォームデータ受け取りは</span><br />
<span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">param</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'name'</span><span style="color: #66cc66;">&#41;</span>;<br />
<br />
<a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">header</span><span style="color: #66cc66;">&#40;</span>-charset=&gt;<span style="color: #ff0000;">&quot;utf-8&quot;</span><span style="color: #66cc66;">&#41;</span>,&nbsp; &nbsp; <span style="color: #808080; font-style: italic;"># HTMLヘッダ出力 $q-&gt;header</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">start_html</span><span style="color: #66cc66;">&#40;</span>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;"># HTMLタグ出力</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -title &nbsp; &nbsp;=&gt; <span style="color: #ff0000;">&quot;テストタイトル&quot;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -charset &nbsp;=&gt; <span style="color: #ff0000;">'UTF-8'</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -encoding =&gt; <span style="color: #ff0000;">'UTF-8'</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -lang &nbsp; &nbsp; =&gt; <span style="color: #ff0000;">'ja-JP'</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -style &nbsp; &nbsp;=&gt; <span style="color: #66cc66;">&#123;</span><span style="color: #ff0000;">'src'</span>=&gt;<span style="color: #ff0000;">'style.css'</span><span style="color: #66cc66;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #66cc66;">&#41;</span>;<br />
<br />
<span style="color: #808080; font-style: italic;"># div開始タグ出力</span><br />
<a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">start_div</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#123;</span>-id=&gt;<span style="color: #ff0000;">'body'</span><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">start_div</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#123;</span>-id=&gt;<span style="color: #ff0000;">'head'</span><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span>;<br />
<br />
<a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">start_form</span><span style="color: #66cc66;">&#40;</span>-action=&gt; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">url</span> ,-method=&gt;<span style="color: #ff0000;">'post'</span><span style="color: #66cc66;">&#41;</span>,&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;"># フォーム開始タグ出力</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">textfield</span><span style="color: #66cc66;">&#40;</span>-name=&gt;<span style="color: #ff0000;">'ユーザID'</span>,&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;"># テキストフィールド</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -default=&gt;<span style="color: #ff0000;">'ユーザID'</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -size=&gt;<span style="color: #cc66cc;">10</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; -maxlength=&gt;<span style="color: #cc66cc;">16</span><span style="color: #66cc66;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">password_field</span><span style="color: #66cc66;">&#40;</span>-name =&gt; <span style="color: #ff0000;">'password'</span>, -size =&gt; <span style="color: #ff0000;">'10'</span><span style="color: #66cc66;">&#41;</span>,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;"># パスワードフィールド</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">filefield</span><span style="color: #66cc66;">&#40;</span>-name =&gt; <span style="color: #ff0000;">'file'</span><span style="color: #66cc66;">&#41;</span>,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;"># ファイル $q-&gt;filefield</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">submit</span><span style="color: #66cc66;">&#40;</span>-name =&gt; <span style="color: #ff0000;">'submitLogin'</span>, -value =&gt; <span style="color: #ff0000;">'ログイン'</span><span style="color: #66cc66;">&#41;</span>,&nbsp; &nbsp;<span style="color: #808080; font-style: italic;"># Submit</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">hidden</span><span style="color: #66cc66;">&#40;</span>-name =&gt; <span style="color: #ff0000;">'mode'</span>, -value =&gt; <span style="color: #ff0000;">'login'</span><span style="color: #66cc66;">&#41;</span>,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;"># Hidden</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">end_form</span>;&nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;"># フォーム終了タグ出力</span><br />
<br />
<span style="color: #808080; font-style: italic;"># div終了タグ出力</span><br />
<a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">end_div</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">end_div</span>;<br />
<br />
<span style="color: #808080; font-style: italic;"># 終了HTMLタグ</span><br />
<a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> <span style="color: #0000ff;">$q</span>-&gt;<span style="color: #006600;">end_html</span>;<br />
<a href="http://perldoc.perl.org/functions/exit.html"><span style="color: #000066;">exit</span></a>;<br />
&nbsp;</div><br />
<br />
フォームには他に<br />
textarea	$q->textarea<br />
Reset		$q->reset<br />
radio		$query->radio_group<br />
checkbox	$query->checkbox、$q->checkbox_group<br />
select		$q->popup_menu<br />
もあります。<br />
<br />
画像ボタンも下記のような感じです。<br />
<div class="perl" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
<a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> <span style="color: #0000ff;">$query</span>-&gt;<span style="color: #006600;">image_button</span><span style="color: #66cc66;">&#40;</span>-name=&gt;<span style="color: #ff0000;">'image_button_name'</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; -src=&gt;<span style="color: #ff0000;">'/images/submit_btn.gif'</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; -align=&gt;<span style="color: #ff0000;">'MIDDLE'</span><span style="color: #66cc66;">&#41;</span>; &nbsp;<br />
&nbsp;</div><br />
詳しくはPerl DOCを。<br />
<br />
<br />
参考<br />
<a href="http://perldoc.jp/docs/modules/CGI.pm-2.89/CGI.pod">Perl Doc ～CGI - 簡単なCGI（Common Gateway Interface）クラス</a><br />
<a href="http://www.futomi.com/lecture/form/cgi-pm.html">Futomi's CGI Cafe ～ CGI.pm を使ってみよう</a><br />
<br />
]]></description>
 <category>Perl</category>
<comments>http://kennyqi.com/item/145</comments>
 <pubDate>Mon, 14 Sep 2009 14:51:30 +0900</pubDate>
</item><item>
 <title>NP_TagEXでタグクラウド</title>
 <link>http://kennyqi.com/item/142</link>
<description><![CDATA[NP_TagEXをインストールしてタグクラウド作ってみました。<br />
■ダウンロード先<br />
 <a href="http://japan.nucleuscms.org/wiki/plugins:tagex">Nucleusプラグインディレクトリ::TagEX</a><br />
<br />
■インストール<br />
1.ダウンロードしたZipファイルを解凍<br />
　→中身をサーバーのプラグインディレクトリにアップロード<br />
2.管理画面からプラグインをインストールする<br />
<br />
■スキン、テンプレートへの反映<br />
<br />
★タグクラウドを表示する<br />
<div class="html" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;">&lt;%TagEX(list20/2/1/1/4)%&gt;</div><br />
<dl><br />
<dt>第一引数：listXX でタグクラウドをXX件表示する</dt><dd>例：20件のとき  list20</dd><br />
<dt>第二引数：数字  でどこのタグを表示するかを指定</dt><dd>0 → ブログ・カテゴリ問わず全てのタグを表示<br />
1 → 表示中のブログに属するタグのみ表示<br />
2 → 表示中のカテゴリに属するタグのみ表示</dd><br />
<dt>第三引数：タグの並び順</dt><dd>1 → そのタグが打ってあるアイテムの多い順<br />
2 → そのタグが打ってあるアイテムの少ない順<br />
3 → タグあいうえお・アルファベット順<br />
4 → ランダム</dd><br />
<dt>第四引数：文字の最小サイズ</dt><dd></dd><br />
<dt>第五引数：文字の最大サイズ</dt><dd></dd><br />
</dl><br />
文字サイズはそのタグが投稿されているアイテム数をレベルわけし、<br />
第四引数（最小値）から第五引数（最大値）の間で計算されます。<br />
それぞれのタグには<br />
<div class="html" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;">&lt;a href=&quot;URL&quot; style=&quot;font-size:2em&quot; &gt;Nucleus&lt;/a&gt;</div><br />
というようなスタイルシートがつくので、<br />
タグ表示全体部分をdiv等で囲って、<br />
そのdivにCSSで最小となるフォントサイズを指定すれば<br />
その大きさに応じて大きさが変わるようです。<br />
<br />
例：<br />
１）スキン内で下記のように記述<br />
<div class="html" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;">&lt;div class=&quot;tag&quot;&gt;&lt;%TagEX(list20/2/1/1/4)%&gt;&lt;/div&gt;</div><br />
２）CSS<br />
<div class="css" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
div<span style="color: #6666ff;">.tag</span> <span style="color: #66cc66;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; font-size<span style="color: #3333ff;">:<span style="color: #933;">8px</span></span>; // ここが最小の大きさ<br />
<span style="color: #66cc66;">&#125;</span><br />
&nbsp;</div><br />
<br />
★テンプレート内に記述<br />
アイテム詳細ページにタグを表示するには<br />
<div class="html" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;">&lt;%TagEX()%&gt;</div><br />
と記述します。<br />
<br />
★SEO対策：：METAタグのkeywordsを追加<br />
<div class="html" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;">&lt;%TagEX(meta20/2/1)%&gt;</div><br />
をHTMLのhead内に記述すれば<br />
タグのリストを<br />
<div class="html" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;">&lt;meta keyword=&quot;&quot; /&gt;</div><br />
として出力してくれます。<br />
<br />
当然のことながら、<br />
インデックスページでのタグ<br />
各アイテムごとのタグ<br />
が表示されるのでSEO対策として使えます。<br />
<br />
]]></description>
 <category>Nucleus</category>
<comments>http://kennyqi.com/item/142</comments>
 <pubDate>Sun, 13 Sep 2009 07:09:10 +0900</pubDate>
</item><item>
 <title>postfixでOP25B対策～ポート587が解放できない。。</title>
 <link>http://kennyqi.com/item/132</link>
<description><![CDATA[はまりました。すごく。。<br />
今回はPostfixでOP25B(Outbound Port 25 Blocking)対策するときのメモです。<br />
<br />
私がハマッタ状況は、<br />
CentOS5 / Postfix2.3.3の環境下で<br />
　ポート解放：ルータ側では開いている。<br />
　クライアントのメーラー：SMTP送信時のポートは587になっている。<br />
　POP3にはアクセスできる。<br />
　25番ポートでは送信可能<br />
<br />
でも、ポート587で接続しにいくと、<br />
SMTPサーバに接続できない。<br />
maillogにも残らない。<br />
<br />
<div class="linux"><br />
# tcpdump -n port 587<br />
</div><br />
で587を監視すると、接続しているのは確認。<br />
<br />
という状況。<br />
で、解決したのでメモします。<br />
<br />
<br />
何がだめだったのかというと<br />
Postfix側でSubmission Port(587) を受け付ける準備ができていなかったということです。<br />
<br />
/etc/postfix/master.cf を編集します。<br />
<div class="linux"><br />
# vi /etc/postfix/master.cf<br />
submission inet n - n - - smtpd  <span>←コメントアウト</span><br />
</div><br />
submission ～の行をコメントアウト。<br />
<br />
<div class="linux"><br />
# /etc/init.d/postfix reload<br />
</div><br />
で、Postfixをリロードすれば<br />
無事に587番ポートで送信することができました！<br />
<br />
<br />
今回、ここにいたるまでに使ったコマンドもメモしておきます。<br />
<br />
■回線上のパケットをIPアドレスで表示<br />
<div class="linux"><br />
#tcpdump -n<br />
</div><br />
終了するには「Ctrl」と「c」を押す。<br />
ポートの指定もできます。<br />
<div class="linux"><br />
#tcpdump -n port 80<br />
</div><br />
<br />
■開いているポートの確認<br />
nmapというソフトを使います。<br />
<br />
nmapがインストールされてない場合はインストールします。<br />
<div class="linux"><br />
# yum -y install nmap<br />
# yum clean packages  <span>←インストールされたらyumの掃除</span><br />
</div><br />
<br />
nmapで開いてるポートを確認します。<br />
<div class="linux"><br />
$nmap localhost<br />
</div><br />
<br />
<br />
参考サイト<br />
<a href="http://ameblo.jp/centos/entry-10111324063.html">postfixのsubmissionポート587の開け方</a><br />
<a href="http://0125.sytes.net/CentOS/log/eid11.html">CentOS memo - nmapの運用</a>]]></description>
 <category>Linux</category>
<comments>http://kennyqi.com/item/132</comments>
 <pubDate>Mon, 7 Sep 2009 23:57:21 +0900</pubDate>
</item><item>
 <title>PHPでアップロードファイルの最大サイズを変更する</title>
 <link>http://kennyqi.com/item/128</link>
<description><![CDATA[PHPでファイルアップロードをする際、<br />
ファイルが大きすぎてエラーが出るときがあります。<br />
これは /etc/php.ini でアップできるファイルの最大値をあらかじめ決めているからです。<br />
今回設定したPHPのデフォルトは2Mだったので4Mまでアップロードできるようにしてみました。<br />
<br />
ちなみに、/etc/php.ini では<br />
ファイルのアップロードに関係するパラメータは３つあります。<br />
<br />
１）memory_limit　：スクリプトが確保できる最大メモリをバイト数<br />
２）post_max_size　：POSTデータに許可される最大サイズ<br />
３）upload_max_filesize　：アップロードされるファイルの最大サイズ<br />
<br />
です。これらの値は、<br />
 memory_limit > post_max_size > upload_max_filesize<br />
という感じで優先順位が決まってるそうなので<br />
upload_max_filesizeをpost_max_sizeよりも大きくしても<br />
post_max_size以上のファイルはアップできないことになります。<br />
post_max_sizeはPOSTデータなので<br />
ファイルを一緒にアップロードするデータの大きさにもよりますが。<br />
<br />
今回は下記のように設定してみました。<br />
<div class="linux"><br />
; Maximum amount of memory a script may consume (8MB)<br />
memory_limit = 8M<br />
; Maximum size of POST data that PHP will accept.<br />
post_max_size = 8M<br />
; Maximum allowed size for uploaded files.<br />
upload_max_filesize = 4M<br />
</div><br />
<br />
なお、 /etc/php.ini を変更したら httpd の再起動をしないと<br />
設定が反映されません。<br />
<br />
<br />
参考：<br />
<a href="http://jp.php.net/manual/ja/ini.core.php#ini.post-max-size">PHP:コア php.ini ディレクティブに関する説明</a>]]></description>
 <category>PHP</category>
<comments>http://kennyqi.com/item/128</comments>
 <pubDate>Sun, 6 Sep 2009 06:15:36 +0900</pubDate>
</item><item>
 <title>MySQLとPHPの連携：： set names utf8以外の文字化け対策</title>
 <link>http://kennyqi.com/item/126</link>
<description><![CDATA[MySQL、PHPでUFT-8のウェブサイトをよく作りますが<br />
データベースにUTF-8で文字を格納して出してみると<br />
???となることがあります。<br />
その対策として SET NAMES utf8 を使ってました。<br />
<br />
が、SET NAMES には脆弱性があるそうで、<br />
これを使わない方法を模索してみました。<br />
MySQLとPHPでウェブサイトを作るとき、<br />
データベース接続後に<br />
<br />
<div class="php" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
<a href="http://www.php.net/mysql_query"><span style="color: #000066;">mysql_query</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;set names utf8&quot;</span><span style="color: #66cc66;">&#41;</span>;<br />
&nbsp;</div><br />
<br />
をしてからSQLを実行していました。<br />
これをすればMySQLのmy.conf が触れなくても<br />
問題なかったんですが、<br />
<br />
このクエリーは脆弱性がある↓そうで<br />
<a href="http://blog.ohgaki.net/set_namesa_mcb_asc">SET NAMESは禁止</a><br />
<br />
このブログの筆者がこの記事のコメント内で<br />
<blockquote><br />
SET NAMES, SET CLIENT ENCODINGを利用しないで、mysql_set_charset, pg_set_client_encodingを利用すれば、このような不整合が発生しないので問題も発生しなくなります。<br />
<p class="origin"><a href="http://blog.ohgaki.net/">yohgaki's blog</a></p><br />
</blockquote><br />
<br />
というわけで、<br />
<div class="php" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
mysql_set_charset<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'utf8'</span><span style="color: #66cc66;">&#41;</span>; <br />
&nbsp;</div><br />
を使うならいいとか。<br />
<br />
おっと、ここで問題が。。<br />
CentOS5だと<br />
yumでインストールできるPHPの最新バージョンが<br />
5.1.6 で<br />
mysql_set_charset が使えるのはPHP5.2.2以上で提供されている。。。<br />
>> <a href="http://www.phppro.jp/phptips/archives/vol42/1">PHPプロ！Tips</a><br />
<br />
そこで、なんとかならないかと検討してみたら、<br />
my.confに下記の記述をすればうまくいきました。<br />
結局サーバ側を触ることになりました＾＾；<br />
<br />
<br />
my.confの[mysqld]内に<br />
<div style="background-color:#000;color:#fff;"><br />
[mysqld]<br />
<br />
default-character-set=utf8<br />
skip-character-set-client-handshake<br />
</div><br />
を記述します。<br />
<br />
MySQLサーバの文字コード関係の設定がどうなっているか<br />
ついでに調べてみました。<br />
<br />
CentOS5 でyumしただけの状態だと<br />
MySQLで下記のようになります。<br />
<br />
<div class="sql" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
mysql&gt; <span style="color: #993333; font-weight: bold;">SHOW</span> <span style="color: #993333; font-weight: bold;">VARIABLES</span> <span style="color: #993333; font-weight: bold;">LIKE</span> <span style="color: #ff0000;">'cha%'</span>;<br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
| Variable_name &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| Value &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
| character_set_client &nbsp; &nbsp; | latin1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_connection | latin1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_database &nbsp; | latin1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_filesystem | <span style="color: #993333; font-weight: bold;">BINARY</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_results &nbsp; &nbsp;| latin1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_server &nbsp; &nbsp; | latin1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_system &nbsp; &nbsp; | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_sets_dir &nbsp; &nbsp; &nbsp; | /usr/share/mysql/charsets/ | <br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
<span style="color: #cc66cc;">8</span> rows <span style="color: #993333; font-weight: bold;">IN</span> <span style="color: #993333; font-weight: bold;">SET</span> <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">0.00</span> sec<span style="color: #66cc66;">&#41;</span><br />
&nbsp;</div><br />
<br />
<br />
で、SET NAMESをすると<br />
<div class="sql" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
mysql&gt; <span style="color: #993333; font-weight: bold;">SET</span> names utf8; &nbsp;<br />
Query OK, <span style="color: #cc66cc;">0</span> rows affected <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">0.00</span> sec<span style="color: #66cc66;">&#41;</span><br />
<br />
mysql&gt; <span style="color: #993333; font-weight: bold;">SHOW</span> <span style="color: #993333; font-weight: bold;">VARIABLES</span> <span style="color: #993333; font-weight: bold;">LIKE</span> <span style="color: #ff0000;">'cha%'</span>;<br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
| Variable_name &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| Value &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
| character_set_client &nbsp; &nbsp; | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_connection | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_database &nbsp; | latin1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_filesystem | <span style="color: #993333; font-weight: bold;">BINARY</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_results &nbsp; &nbsp;| utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_server &nbsp; &nbsp; | latin1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_system &nbsp; &nbsp; | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_sets_dir &nbsp; &nbsp; &nbsp; | /usr/share/mysql/charsets/ | <br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
<span style="color: #cc66cc;">8</span> rows <span style="color: #993333; font-weight: bold;">IN</span> <span style="color: #993333; font-weight: bold;">SET</span> <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">0.01</span> sec<span style="color: #66cc66;">&#41;</span><br />
&nbsp;</div><br />
<br />
character_set_client<br />
character_set_connection<br />
character_set_results<br />
character_set_system<br />
がutf8になってます。<br />
<br />
で、my.confの[mysqld]に<br />
default-character-set=utf8<br />
skip-character-set-client-handshake<br />
を追加すると、<br />
<br />
<div class="sql" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
mysql&gt; <span style="color: #993333; font-weight: bold;">SHOW</span> <span style="color: #993333; font-weight: bold;">VARIABLES</span> <span style="color: #993333; font-weight: bold;">LIKE</span> <span style="color: #ff0000;">'cha%'</span>;<br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
| Variable_name &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| Value &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
| character_set_client &nbsp; &nbsp; | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_connection | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_database &nbsp; | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_filesystem | <span style="color: #993333; font-weight: bold;">BINARY</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_results &nbsp; &nbsp;| utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_server &nbsp; &nbsp; | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_set_system &nbsp; &nbsp; | utf8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br />
| character_sets_dir &nbsp; &nbsp; &nbsp; | /usr/share/mysql/charsets/ | <br />
+<span style="color: #808080; font-style: italic;">--------------------------+----------------------------+</span><br />
<span style="color: #cc66cc;">8</span> rows <span style="color: #993333; font-weight: bold;">IN</span> <span style="color: #993333; font-weight: bold;">SET</span> <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">0.00</span> sec<span style="color: #66cc66;">&#41;</span><br />
&nbsp;</div><br />
<br />
となります。<br />
<br />
character_set_database<br />
character_set_server<br />
もutf8になってますね。<br />
<br />
]]></description>
 <category>Linux</category>
<comments>http://kennyqi.com/item/126</comments>
 <pubDate>Fri, 4 Sep 2009 19:09:48 +0900</pubDate>
</item><item>
 <title>NP_Geshi2 をインストール</title>
 <link>http://kennyqi.com/item/124</link>
<description><![CDATA[HTML、PHP、Ruby、CSSなどのコードを<br />
色つき表示してくれるNucleusのプラグイン「NP_Geshi2｣をインストールしました。<br />
<br />
インストールは簡単。<br />
１）<a href="http://japan.nucleuscms.org/wiki/plugins:geshi2">NucleusPlugins::NP_GeSHi2</a>にてNP_GeSHi2_v**.zipをダウンロード<br />
２）<a href="http://qbnz.com/highlighter/">GeSHi Library</a>から「GeSHi version 1.0.7.20」をダウンロード<br />
　★★★ここ重要！<br />
　　現時点の最新版1.0.8.4で動くかなーと思って入れたけど、動きませんでした。　<br />
　　このバージョン以外だと動かないようです。ご注意を。<br />
<br />
１）を解凍したものを　プラグインディレクトリ nucleus/plugins へアップ<br />
２）を解凍すると、「geshi」というディレクトリの中に<br />
　「geshi」ディレクトリと「geshi.php」があります。<br />
　このgeshi.phpと同じ階層の「geshi」ディレクトリを<br />
　nucleus/plugins/geshi　の中にアップ。<br />
<br />
　nucleus/plugins/geshi/geshi/ＰＨＰファイル群<br />
　nucleus/plugins/geshi/geshi.php<br />
<br />
 という感じです。<br />
<br />
あとは管理画面からプラグインをインストールして<br />
オプション編集の「Header for pre」を下記のようにして保存<br />
&lt;div class="###language###" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"&gt;<br />
<br />
あとは、アイテム内に<br />
&lt;pre class="php"&gt; ～ PHPコード ～ &lt;/pre&gt;<br />
と書けば、↓こんな風に表示されます。<br />
<br />
<div class="php" style="border:solid 1px #ccc; background-color:#eee; padding:2px 4px;"><br />
<span style="color: #000000; font-weight: bold;">&lt;?php</span><br />
<br />
&nbsp;<span style="color: #000000; font-weight: bold;">function</span> test<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span><br />
&nbsp; &nbsp; &nbsp;<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'hogehoge'</span>;<br />
&nbsp;<span style="color: #66cc66;">&#125;</span><br />
<br />
&nbsp; &nbsp; test<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;<br />
<span style="color: #000000; font-weight: bold;">?&gt;</span><br />
&nbsp;</div><br />
]]></description>
 <category>Nucleus</category>
<comments>http://kennyqi.com/item/124</comments>
 <pubDate>Fri, 4 Sep 2009 09:57:53 +0900</pubDate>
</item>
  </channel>
</rss>