<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>masha.webTechLog</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/" />
   <link rel="self" type="application/atom+xml" href="http://masha.maakikaku.jp/atom.xml" />
   <id>tag:masha.maakikaku.jp,2009://1</id>
   <updated>2008-11-14T01:52:08Z</updated>
   <subtitle>PHP, Javascript(AJAX), CSS, MySQLなWEB制作メモ。</subtitle>
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type 3.35</generator>

<entry>
   <title>【WordPress】Ktai Entryをさくらで使う【メール投稿プラグイン】</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2008/11/wordpressktai_entry.php" />
   <id>tag:masha.maakikaku.jp,2008://1.349</id>
   
   <published>2008-11-13T13:42:29Z</published>
   <updated>2008-11-14T01:52:08Z</updated>
   
   <summary> さくらインターネットでWordpressのメール投稿プラグイン、 「Ktai ...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="52" label="Ktai Entry" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="50" label="WORDPRESS" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="3" label="さくらのレンタルサーバ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<img src="http://masha.maakikaku.jp/_image/081113.gif" width="400" height="300" />
さくらインターネットでWordpressのメール投稿プラグイン、
「Ktai Entry」をインストールします。
プラグイン作者に感謝！

]]>
      <![CDATA[<strong>◎環境</strong>
・さくらインターネット プレミアム
　FreeBSD 6.1-RELEASE-p23 i386
　Apache/1.3.39 (Unix)
　sendmail 8.13.6
　PHP 5.2.6
・WordPress 2.6.3
・Ktai Entry 0.8.8
<a href="http://www.yuriko.net/cat/wordpress/">http://www.yuriko.net/cat/wordpress/</a>

<strong>◎単語説明</strong>
投稿用メルアド ＝ 投稿する際の宛先に使うメルアド
投稿元メルアド ＝ 投稿する送信者のメルアド

<strong>◎さて作業</strong>
<strong>▼ ファイル準備</strong>
Ktai Entryを以下ＵＲＬよりＤＬし展開。
<a href="http://www.yuriko.net/cat/wordpress/">http://www.yuriko.net/cat/wordpress/</a>

<strong>▼ inject.php 修正</strong>
inject.php の３６行目、
<blockquote>while ($line = fgets(STDIN, 1024)) {</blockquote>
を
<blockquote>while ($line = file_get_contents("php://stdin")) {</blockquote>
へ変更。

※この修正が、さくらでKtaiEntry動作のキモだと思うのですが、
どうして fgets(STDIN) で取得できなかったのか、
そして file_get_contents("php://stdin") が以後問題がないか、
よくわかりませんｗ 様子見で運用中、、

<strong>▼ プラグインアップ</strong>
WordPressのプラグインフォルダにアップ。

<strong>▼ 投稿用ユーザー作成</strong>
WordPressのコンパネよりユーザーを新規作成し、
投稿元メルアドをメールアドレスにする。
権限は作成者以上で適宜設定する。

<strong>▼ プラグイン有効化・初期設定</strong>
プラグインを有効にする。
さらに 設定 > メール投稿 より以下諸処設定。
・投稿受付メールアドレス：投稿用メルアド
・サーバーオプション：変更無し（チェック無し）
・POP3 読み込み間隔：しない
・投稿に挿入する画像サイズ：適宜
・投稿テンプレート：適宜

<strong>▼ mailfilter作成</strong>
ローカルに戻り、.mailfilter ファイルを以下内容で新規作成。

<blockquote>to "| /usr/local/bin/php /home/(さくらID)/www/(WPのパス)/wp-content/plugins/ktai_entry/inject.php"</blockquote>

※「|」と「/usr～」と「/home/～」の間は半角スペースです

FTPにて /home/(さくらID)/MailBox/(投稿用メルアドアカウント) 以下へイン。
作成した .mailfilter をアップし、パーミッションを 600 へ変更。

※投稿用メルアドを作っていなかった場合は、
さくらのコンパネからメールのアカウントを新規作成してください。
するとMailBox下にアカウント名のディレクトリができます。

<strong>▼ CSS適宜追加</strong>
デザイン > テーマエディタ > スタイルシート (style.css) で以下を適宜追加。

<blockquote>/* ----- Style for Ktai Entry ----- */
.photo {
	padding-right:6px;
	float:left;
	line-height:110%;
	font-size:0.85em;
	text-indent:0;
}
.photo img {
	background:white;
	margin:0 4px 4px 0;
	padding:3px;
	border:1px solid #999;
}
.photo-end {
	clear:left;
}
/* ---------- */</blockquote>


以上です。おつかれさまでした（´ω、`）

なお投稿の際、前と本文がかぶるとはじかれます。
テストの際は気をつけてくらさいな。

では股ー
]]>
   </content>
</entry>
<entry>
   <title>Go-PEARを使ったPEARのインストール</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2008/05/gopearpear.php" />
   <id>tag:masha.maakikaku.jp,2008://1.330</id>
   
   <published>2008-05-02T12:35:12Z</published>
   <updated>2009-07-04T08:14:27Z</updated>
   
   <summary> Go-PEARを利用し、さくらのレンタルサーバへPEARをインストールします。...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="48" label="Go-PEAR" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2" label="PEAR" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="3" label="さくらのレンタルサーバ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<img alt="PEAR2.gif" src="http://masha.maakikaku.jp/_upload/images/PEAR2.gif" width="400" height="300" />
Go-PEARを利用し、さくらのレンタルサーバへPEARをインストールします。
さくらは元々PEARがインストールされていますが、
ヴァージョンが古いのと、モジュールを追加する際にGo-PEARが便利です。
Go-PEARはコマンドプロンプトなど難しいソフトを使用せずにインストール作業できるのも、
初心者にはやさしいポイントですね。

Go-PEARのヴァージョンによって若干画面が変わりますが、
基本は一緒ですのでがんばってください。
]]>
      <![CDATA[・私の環境
サーバ：さくらのレンタルサーバ プレミアム
PHPのヴァージョン：5.2.5(コンパネで4→5に切り替えました。さくらも便利になりましたね、、)
Go-PEARのヴァージョン：1.1.1


■手順１ go-pear.php を用意、アップロード
<a href="http://pear.php.net/go-pear" target="_blank">http://pear.php.net/go-pear</a>
↑のスクリプトを開き、go-pear.php と名付け、ローカルに保存します。
保存したものをFTPなどで /home/(アカウント名)/www/ 以下へアップロードします。
さくらで無い方は、ブラウザからアクセスできるディレクトリのどこかへアップしてください。


■手順２ go-pear.php へアクセスしPEARをインストール
ブラウザから go-pear.php へアクセスし、英語テキスト下部 Next >> をクリックします。
<a href="http://masha.maakikaku.jp/_upload/images/sc00001.php" onclick="window.open('http://masha.maakikaku.jp/_upload/images/sc00001.php','popup','width=1036,height=257,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://masha.maakikaku.jp/_upload/images/sc0000-thumb.png" width="400" height="99" alt="" /></a>

インストール用の設定画面が出ますので、諸所設定します。

・Packages
Go-PEAR1.1.1では、
PEAR_Frontend_Gtk2 と MDB2 の2つについては、
インストールが選択式になっているようです。
よくわからなければ両方チェックいれちゃいましょう。

・Configuration
<table cellpadding="2" cellspacing="2" border="1"><thead><tr><th>項目</th><th>なんとなく説明</th></tr></thead><tbody><tr><td>1. Installation prefix</td><td>インストールディレクトリ。以降 $prefix となる。</td></tr><tr><td>2. Binaries directory</td><td>コマンドを保存するディレクトリ</td></tr><tr><td>3. PHP code directory ($php_dir)</td><td>実際のパッケージを保存するディレクトリ。以降 $php_dir で省略可。</td></tr><tr><td>4. Documentation base directory</td><td>説明ファイル保存ディレクトリ</td></tr><tr><td>5. Data base directory</td><td>CSSなど雑多ファイルを保存するディレクトリ</td></tr><tr><td>6. Tests base directory</td><td>テストプログラム？保存ディレクトリ</td></tr></tbody><tr><td>7. Temporary files directory</td><td>一時ファイル保存ディレクトリ</td></tr><tr><td>8. PEAR Installer cache directory</td><td>一時ファイル保存ディレクトリ</td></tr><tr><td>9. Cache TimeToLive</td><td>キャッシュ生存時間？</td></tr><tr><td>10. Filename of WebFrontend</td><td>生成するPEAR管理ページのパス</td></tr><tr><td>11. php.exe path, optional (CLI command tools)</td><td>php.exe本体へのパス。</td></tr></table>

例として、以下私の設定。
/home/(アカウント名)/pear/ へ全て収めたくて必死です。

<table cellpadding="2"cellspacing="2" border="1"><thead><tr><th>項目</th><th>設定例</th></tr></thead><tr><td>1. Installation prefix ($prefix)</td><td>/home/(アカウント名)/pear</td></tr><tr><td>2. Temporary files directory</td><td>$prefix/temp</td></tr><tr><td>3. Binaries directory</td><td>$prefix/bin</td></tr><tr><td>4. PHP code directory ($php_dir)</td><td>$prefix/php</td></tr><tr><td>5. Documentation base directory</td><td>$prefix/docs</td></tr><tr><td>6. Data base directory</td><td>$prefix/data</td></tr><tr><td>7. Tests base directory</td><td>$prefix/tests</td></tr><tr><td>8. PEAR Installer cache directory</td><td>$prefix/cache</td></tr><tr><td>9. Cache TimeToLive</td><td>3600</td></tr><tr><td>10. Filename of WebFrontend</td><td>/home/(アカウント名)/www/go-pear-admin.php</td></tr><tr><td>11. php.exe path, optional (CLI command tools)</td><td>/usr/local/bin/php</td></tr></table>
※ここらへんの値を変にいじると後々エラーが出る可能性があります。
よくわからない場合や初めて作業する場合はあまりいじらない方が懸命です。
<a href="http://masha.maakikaku.jp/_upload/images/sc0005.php" onclick="window.open('http://masha.maakikaku.jp/_upload/images/sc0005.php','popup','width=1036,height=1010,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://masha.maakikaku.jp/_upload/images/sc0005-thumb.png" width="400" height="389" alt="" /></a>

・Optional
とくになにもしなくてＯＫです。

そして「Install」ボタンをクリックすると、
ずらずら～っとログが並びます。
変なエラーメッセージがでなければ、
これでPEAR本体はインストール完了です。
<a href="http://masha.maakikaku.jp/_upload/images/sc0006.php" onclick="window.open('http://masha.maakikaku.jp/_upload/images/sc0006.php','popup','width=1036,height=935,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://masha.maakikaku.jp/_upload/images/sc0006-thumb.png" width="400" height="361" alt="" /></a>


■手順３ 欲しいパッケージのインストール
Go-PEARの管理ページから、追加のパッケージをインストールします。
さきほどずらずら～っと並んだログの一番下に、
管理ページへのリンクがありますのでそちらをクリック。

一度ページを閉じてしまった場合は、
手順２で設定した 10. Filename of WebFrontend のＵＲＬを入力してください。
私の設定例だと http://(ドメイン)/go-pear-admin.php です。

開いたら画面下 Quick-install a package へパッケージ名を入力し(ex. DB, XML_RSS etc..)、
「Install」ボタンをクリックすれば、自動で追加をおこなってくれます。
<a href="http://masha.maakikaku.jp/_upload/images/sc0007.php" onclick="window.open('http://masha.maakikaku.jp/_upload/images/sc0007.php','popup','width=1036,height=628,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://masha.maakikaku.jp/_upload/images/sc0007-thumb.png" width="400" height="242" alt="" /></a>

正確なパッケージ名がわからない、
パッケージ名の一部しかわからない場合は、
画面左側の「Package Search」メニューからどうぞ。


■手順４ php.ini のセッティング
最後にPHPの設定ファイル php.ini へ、include_path を設定します。
php.ini は /home/(アカウント名)/www/ にあります。
なければさくらのコントロールパネルから設定しましょう。

php.ini には、手順２の 4. PHP code directory ($php_dir) で設定した値を、
以下のように追記します。
<blockquote>include_path = ".:/home/(アカウント名)/pear/php"</blockquote>


--------------------------------------------

以上で終了です。
作業が終了したら、最初にアップした go-pear.php を削除し、
管理ページにはパスワードをかけておきましょう。
パスワードの掛け方がわからなければ、
一時的に削除しちゃいましょう。

おつかれさまでした。

参考サイト
<a href="http://www.ooyashima.net/db/install_pear.htm" target="_blank">大八洲.NET - PEARのインストール</a>
<a href="http://phptips.seesaa.net/article/36638451.html" target="_blank">PHPを使ったWebサイト構築　備忘録 - さくらインターネットへのＰＥＡＲモジュールの追加インストール</a>


]]>
   </content>
</entry>
<entry>
   <title>[PHP][可変変数] 変数名や関数名を動的に指定する</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2008/03/php.php" />
   <id>tag:masha.maakikaku.jp,2008://1.318</id>
   
   <published>2008-03-14T02:38:59Z</published>
   <updated>2008-09-17T07:28:12Z</updated>
   
   <summary>連番の変数や関数名を for で処理するときなど、 動的に名前を指定したいときが...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      連番の変数や関数名を for で処理するときなど、
動的に名前を指定したいときがある。
そのときは「可変変数」「可変関数」を使用するようだ。
以下メモメモ。。


      <![CDATA[<strong>■可変変数</strong>
PHP: 可変変数 - Manual
<a href="http://jp.php.net/manual/ja/language.variables.variable.php">http://jp.php.net/manual/ja/language.variables.variable.php</a>
変数名を動的に指定する場合は、

<blockquote>$a = 'hello';<br />
$$a = 'world'; （または $hello = 'world';)</blockquote>

としたとき、以下のような出力。

<blockquote>echo "$a"; → hello<br />
echo "${$a}"; → world<br />
echo "$hello"; → world</blockquote>

変数名の一部だけを可変にする場合は、

<blockquote>$b = 'llo';<br />
echo "$he{$b}"; → エラーとなる！<br />
echo "${'he' . $b}"; → world</blockquote>


<strong>■可変関数</strong>
<a href='http://phpspot.net/php/pg%89%C2%95%CF%8A%D6%90%94.html' target='_blank'>可変関数 - phpspot</a>
関数名を動的に指定する場合は、

<blockquote>$a(); → hello()が呼び出される</blockquote>

関数名の一部だけを可変にする場合は、

<blockquote>"he" . $b(); → エラーとなる！<br />
$c = "he" . $b;<br />
$c(); → hello()が呼び出される</blockquote>
変数名と違い、事前に結合しておかないと使えないようだ。
<br />
<br />
<br />
<br />
<strong>おまけ ■定数かどうか判定する</strong><br />
constant関数使います。

PHP: constant - Manual
<a href="http://jp.php.net/manual/ja/function.constant.php">http://jp.php.net/manual/ja/function.constant.php</a>

定数で無いとき、NULLを返す関数です。
↓のような感じで使えそうかなー。

<blockquote>//「_CONST0」～「_CONST9」まで、もし定数で存在したら出力<br />
for($i = 0; $i < 9; $i++) {<br />
&nbsp;&nbsp;if(constant(constant("_CONST" . $i)) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;echo(constant("_CONST" . $i));<br />
&nbsp;&nbsp;}<br />
}</blockquote>]]>
   </content>
</entry>
<entry>
   <title>EmEditor で ダイレクトタグジャンプ</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2008/03/emeditor.php" />
   <id>tag:masha.maakikaku.jp,2008://1.316</id>
   
   <published>2008-03-06T04:18:21Z</published>
   <updated>2008-03-06T06:42:35Z</updated>
   
   <summary> 「将来の為に！(｀･ω･´) ｼｬｷｰﾝ」（←具体的にはﾁﾝﾌﾟﾝｶﾝﾌﾟﾝ）...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="45" label="EmEditor" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<img alt="emeditor.gif" src="http://masha.maakikaku.jp/_upload/images/emeditor.gif" width="400" height="300" />
「将来の為に！(｀･ω･´) ｼｬｷｰﾝ」（←具体的にはﾁﾝﾌﾟﾝｶﾝﾌﾟﾝ）
と、開発環境を eclipse へ変えてみたのだが・・

ｲﾗｲﾗ！ｗ

１ヶ月くらい使って操作方法にはそこそこ慣れたし、
重いのはさほど気にはならなかったのだけれど、
・行を選択してDeleteしても空行が残る
・コード表示の色設定が煩雑
・EUC-JPで改行コードが文字化け
・たまにおちるｗ（２回だけだけど）
などなど、不満がつのっていく。。期待の機能面も正直、
私のコーディングらべるでは特に必要無いなぁ・・（と思われる）ものばかり。

ただね唯一、ダイレクトタグジャンプ という機能が便利！って感動した。
関数やクラス名の上で F10 を押すとその定義場所に飛んでっちゃう！
これプログラマーにとっては一般的な機能なのですねぇ、、知らなんだ・・。
それがEmEditorにあったらな～と思ってぐぐったら、あったｗ
そりゃそうですね、、なのでもうデモドリコース！

そして、、、プラグインのインストールメモ。

]]>
      <![CDATA[以下を参考に。
→<a href="http://jp.emeditor.com/modules/newbb/viewtopic.php?topic_id=318&forum=9&post_id=1320">EmEditor フォーラム PHPの関数ジャンプ用マクロ</a>


-----------------------------------------------

<strong>■手順１ Ctags 日本語対応版をインストール</strong>
↓より「Win32版(バイナリのみ)」をＤＬし、
ctags.exe をEmEditorのプラグインフォルダへ放り込む。
→<a href="http://hp.vector.co.jp/authors/VA025040/ctags/" target="_blank">exuberant ctags 日本語対応版</a>


<strong>■手順２ Ctagsの更新・検索プラグインをインストール</strong>
↓をＤＬし、両 jsee ファイルをプラグインフォルダへ放り込む。
→<a href="http://emeditor.web.fc2.com/AwEmSoftware.html#CtagsUpdate" target="_blank">CtagsUpdateプラグイン</a>
→<a href="http://emeditor.web.fc2.com/AwEmSoftware.html#CtagsJump" target="_blank">CtagsJumpプラグイン</a>


<strong>■手順３ 更新プラグイン設定</strong>
EmEditorを立ち上げ（立ち上げていた場合は再起動し）、
メニューの ツール→プラグイン→プラグインの設定 より、
プラグインの選択 で CtagsUpdate を選択し、プロパティ(P) をクリック。
ctags実行ファイルのパス(E): を適宜設定。
ついでに 出力をコンソールに表示 もチェック入れる。


<strong>■手順４ 更新プラグイン実行</strong>
引き続きEmEditor上で、ツール→プラグイン→Tags(ctags)更新 をクリック。
検索対象にしたいPHPファイル達があるフォルダを指定してＯＫをクリック。

プロンプトがずらずら～とでて、該当ディレクトリに tags というファイルが生成されます。
これで ツール→プラグイン→Tags(ctags)ジャンプ から、タグジャンプができます☆


<strong>■手順５ ショートカットキー設定</strong>
毎回プラグインメニューをたどるのは手間。
両プラグインへキーボードショートカットを割り当てておきましょう。
ヘルプ→キーボードマップ より設定できます。
私はジャンプをＦ１０（元タグジャンプ）、更新をCtrl+F10にしました。

-----------------------------------------------


以上おつかれさまでした。。
以下はその他TIPSです。

●ついでに、、
↓のマクロで、私の関数たちを強調表示へ自動登録したかったのですが、
どうもうまく動きませんでした・・＿|＼●_
→<a href="http://emeditor.web.fc2.com/CtagsSearch.jsee" target="_blank">Tagsシンボル検索マクロ</a>
強調表示に登録できれば、WordCompleteプラグインの
補完候補として機能するのでとても便利そう、、

秀丸ではtagsファイルから直接単語補完できるとか？
ソース→<a href="http://derui.blog101.fc2.com/blog-entry-55.html" target="_blank">http://derui.blog101.fc2.com/blog-entry-55.html</a>
ここらへんは秀丸に一長があるのかもですね。


では！
]]>
   </content>
</entry>
<entry>
   <title>header()→readfile()でファイルのダウンロード</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2008/02/headerreadfile_1.php" />
   <id>tag:masha.maakikaku.jp,2008://1.310</id>
   
   <published>2008-02-13T09:24:05Z</published>
   <updated>2008-02-13T09:39:10Z</updated>
   
   <summary> ファイルのダウンロードを、PHPからブラウザへ直接吐き出したいとき、 head...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      ファイルのダウンロードを、PHPからブラウザへ直接吐き出したいとき、
header() でHTTP ヘッダ送信 → readfile() でファイル出力 の流れをとるようだ。

このとき、readfile() の引数にはファイルのパスを突っ込むだけだが、
header() に何をいれるかで、どうも各ブラウザ、特にIE系で、
ダウンロードが発動したりしなかったり画面真っ白になったりばらばら・・。。
そんなとき、、、


      <![CDATA[↓のサイトを見て解決。
<a href="http://vivian.mysite.ddo.jp/modules/newbb/viewtopic.php?topic_id=16&forum=5">IEの謎の動作とCSVダウンロード - マイサイト開発室</a> 

ようは、IEはヘッダー指定を無視してキャッシュつかったりするから、
キャッシュ無効のヘッダーを送ればＯＫ、ってことかしら？
とりあえず以下で私の環境では IE・Sleipnir・Firefox完動☆

<blockquote>header("Cache-Control: public");
header("Pragma: public");
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"ファイル名\"");</blockquote>

実際にはもうちょっと色つけて、以下みたいなコードを↓

<blockquote>$path_file = "ファイルパス";
$file_size = filesize($path_file);
header("Cache-Control: public");
header("Pragma: public");
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"".basename($path_file)."\"");
header("Content-Length: ".$file_size);</blockquote>

IEのバージョンによっても、動作ばらばらっぽいなぁ・・怖い＞＜；
ま、とりあえずｗ では！

磨者(MAAKIKAKU)]]>
   </content>
</entry>
<entry>
   <title>WindowsXP へ XAMPP をインストール</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2008/02/windowsxp_xampp.php" />
   <id>tag:masha.maakikaku.jp,2008://1.309</id>
   
   <published>2008-02-11T08:21:32Z</published>
   <updated>2008-02-11T08:24:37Z</updated>
   
   <summary> Apach + PHP4&amp;5 + MySQL + PHPMyAdmin などを...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="36" label="Apache" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="11" label="MySQL" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="phpMyAdmin" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="30" label="WINDOWS" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="7" label="XAMPP" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<img alt="xammp.jpg" src="http://masha.maakikaku.jp/_upload/images/xammp.jpg" width="400" height="300" />
Apach + PHP4&5 + MySQL + PHPMyAdmin などをPCへ一括インストールできる XAMPP 。一括インストールしてくれるだけでなく、ApacheやMySQLを手軽にコントロールできるし、PHP4と5の切り替えにも対応。前回の日記が古くなったので、また新しくメモします。

]]>
      <![CDATA[OS：Windows XP SP2
INSTVER：XAMPP 1.6.5
（Apache HTTPD 2.2.6, MySQL 5.0.51, PHP 5.2.5 + 4.4.7 + PEAR + Switch, MiniPerl 5.8.7, Openssl 0.9.8g, PHPMyAdmin 2.11.3 etc..）

-----------------------------------------------
<strong>■手順１ XAMPPインストール</strong>
下記ページより、Windows版XAMPP(インストーラ付)をダウンロードし、展開＆インストール。
→<a href="http://www.apachefriends.org/jp/xampp-windows.html" target="_blank">apache friends - XAMPP for Windows</a>

・インストール方法参考サイト
→<a href="http://phpspot.net/php/pgXAMPP.html" target="_blank">http://phpspot.net/php/pgXAMPP.html</a>
→<a href="http://www.thinkit.co.jp/free/article/0701/12/3/" target="_blank">http://www.thinkit.co.jp/free/article/0701/12/3/</a>

インストール先はデフォルト設定 c:\xampp のままではなく、
制作中のhtmlファイルなどを置くディレクトリにした方がよい。
私の場合は Fドライブの www フォルダ以下をWEB関係の制作フォルダにしているので、
F:\www と指定してインスト。
（＊以降Windows上のパス表記はこの F:\www をルートとしています）


<strong>■手順２ MySQL初期設定</strong>
MySQL初期アカウント"root"のパスワードを設定する。

ブラウザから http://localhost/xampp/ へアクセス。
「日本語」を選択後、XAMPP管理トップページ左側メニューより「セキュリティ」をクリック。
中段「=> <a href="http://localhost/security/xamppsecurity.php" target="_blank">http://localhost/security/xamppsecurity.php</a> 」をクリックし、
表示された「MySQLのセキュリティコンソール & XAMPPのディレクトリ制御」ページにて
「MYSQL 項目: "ROOT" パスワード」の「新しいパスワード:」を適宜設定。
設定後、コンパネからMySQLを再起動。


<strong>■手順３ WEB用のデータを移す</strong>
WEB用のデータたちを htdocsフォルダへ全て移す。
これでブラウザから http://localhost/○○ としてサイトが見れるようになります。
-----------------------------------------------


以上おつかれさまでした。。
以下はその他TIPSです。


<strong>■Perlパス設定</strong>
一般的なLinuxサーバ上でのPerlへのパスは usr/bin/perl か usr/local/bin/perl。
それをそのままWindows上で使えるようにしたいので、
XAMPPのドライブ直下に usr/bin または usr/local/bin のシンボリックリンクを作成する。
私の場合は、linkd F:\usr F:\www\perl とコマンド。
シンボリックリンクの作成方法については、以下日記の「■手順３■」を参照。
→<a href="http://masha.maakikaku.jp/2007/06/dreamwerver_smarty.php" target="_blank">Dreamwerver で Smarty</a>


<strong>■パブリックフォルダの変更</strong>
デフォルトでは htdocs フォルダ以下がブラウザで表示されるようになっている。
が、XAMPPを中途導入した際などは、他ソフトの諸所設定を変更するのがめんどい為、
どうしても他のフォルダを表示設定させたい場面がある。
その場合はApacheの設定ファイルを変更する。

apache\conf\httpd.conf を開き、下記該当２箇所を適宜パスへ変更
176行目付近 DocumentRoot "F:/www/htdocs"
203行目付近 <Directory "F:/www/htdocs" target="_blank">

パスを変更した場合は、元々 htdocs に入っているコンテンツを、
変更されたフォルダへ全て移す。(xampp の管理画面などが入っている為）


<strong>■XAMPPのアンインストールについて</strong>
MySQLのデータとhtdocsフォルダについては、
アンインストール中に、削除するかどうか選択できるようになっている。
よってその２つのフォルダに収納していたデータについては、
アンインストール前に隔離するなど特別な対処は必要ない。
逆に言えば他のフォルダになにか自分で追加したデータがある際は、
隔離しておかないと一緒に消されてしまうので注意。

＊070615追記
・・と書いたが、残ったMySQLのデータが何かの拍子で消えてしまっていた。
再びXAMPPをインストールした際、消されて、または上書き？されてしまったのか？？
とにかくやっぱり必要なフォルダはバックアップしといた方がよいです。。


<strong>■MySQL+phpMyAdminでの日本語の取り扱い</strong>
phpMyAdmin上にてテーブルを新規作成する際、
照合順序へ何も指定がないとデフォルトで latin1_general_ci となる。
これはもちろん日本語が取り扱えないので注意。
utf8_unicode_ci(UTF-8) や ujis_japanese_ci(EUC-JP) などに適宜設定。

その他MySQLやphpMyAdminに関する日本語の取り扱い、及び文字化けTipsは以下参考に。
→<a href="http://www.artful.jp/blog/archives/2006/07/xamppmysqlphpmy.html" target="_blank">[masha.webTechLog]XAMPP＋～（PHP+MySQL の文字化け）</a>
→<a href="http://www.artful.jp/blog/archives/2006/07/xamppmysqlphpmy.html" target="_blank">xampp：Mysqlに関するPHPMyAdminの文字化け</a>
→<a href="http://www.artful.jp/blog/archives/2007/05/xamppphpmyadmin.html" target="_blank">XamppのphpMyAdminの文字化けーその２</a>
→<a href="http://phpspot.org/blog/archives/2005/06/mysql41_1.html" target="_blank">[phpspot開発日誌]MySQL4.1の文字化け対策</a>


<strong>■ページが表示されない。500 Errorをはいてしまう。</strong>
.htaccessファイルに RewriteEngine 関係のコマンドがあると、
私のローカル環境では 500 Error をはいてしまう。
仕方ないので.htaccessファイルはローカルに置かないこととした。]]>
   </content>
</entry>
<entry>
   <title>コマンドプロンプトを使わないで、さくらへPEARをインストール（Go-PEAR使用）</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/12/_peargopear.php" />
   <id>tag:masha.maakikaku.jp,2007://1.292</id>
   
   <published>2007-12-19T04:52:00Z</published>
   <updated>2008-05-07T09:01:27Z</updated>
   
   <summary>新しく記事を書き直しました。 →Go-PEARを使ったPEARのインストール G...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2" label="PEAR" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="3" label="さくらのレンタルサーバ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<div class="caution">新しく記事を書き直しました。
→<a href="http://masha.maakikaku.jp/2008/05/gopearpear.php">Go-PEARを使ったPEARのインストール</a></div>

Go-PEARを使って、コマンドプロンプトを使用せずに、
さくらのレンタルサーバへPEARをインストールします。

]]>
      <![CDATA[・環境
レン鯖：さくらのレンタルサーバ スタンダード
PHPのヴァージョン：5.2.5
Go-PEARのヴァージョン：1.0.2


■手順１ Go-PEAR を使って PEAR をインストール
<a href="http://pear.php.net/go-pear">http://pear.php.net/go-pear</a> を開くとスクリプトが表示されます。
それを go-pear.php と名付けローカルへ保存。
保存した go-pear.php をFTPなどで /home/(アカウント名)/www/ 以下へアップロード。
ブラウザで go-pear.php へアクセスし、画面下部 Next >> をクリックした後、
インストールに関する諸所の設定を入力。
<table cellpadding="2" cellspacing="2" border="1"><thead><tr><th>項目</th><th>なんとなく説明</th></tr></thead><tbody><tr><td>1. Installation prefix</td><td>PEARのインストールディレクトリ。以降 $prefix で省略可。</td></tr><tr><td>2. Binaries directory</td><td>コマンドを保存するディレクトリ</td></tr><tr><td>3. PHP code directory ($php_dir)</td><td>実際のパッケージを保存するディレクトリ。以降 $php_dir で省略可。</td></tr><tr><td>4. Documentation base directory</td><td>説明ファイル保存ディレクトリ</td></tr><tr><td>5. Data base directory</td><td>CSSなど雑多ファイルを保存するディレクトリ</td></tr><tr><td>6. Tests base directory</td><td>テストプログラム？保存ディレクトリ</td></tr></tbody><tr><td>7. Temporary files directory</td><td>一時ファイル保存ディレクトリ</td></tr><tr><td>8. PEAR Installer cache directory</td><td>一時ファイル保存ディレクトリ</td></tr><tr><td>9. Cache TimeToLive</td><td>キャッシュ生存時間？</td></tr><tr><td>10. Filename of WebFrontend</td><td>生成するPEAR管理ページのパス</td></tr><tr><td>11. php.exe path, optional (CLI command tools)</td><td>php.exe本体へのパス。</td></tr></table>

例として、以下私の設定。

<table cellpadding="2"cellspacing="2" border="1"><thead><tr><th>項目</th><th>設定例</th></tr></thead><tbody><tr><td>1. Installation prefix</td><td>/home/(アカウント名)/pear</td></tr><tr><td>2. Binaries directory</td><td>$prefix/bin</td></tr><tr><td>3. PHP code directory ($php_dir)</td><td>$prefix/PEAR</td></tr><tr><td>4. Documentation base directory</td><td>$prefix/doc</td></tr><tr><td>5. Data base directory</td><td>$prefix/data</td></tr><tr><td>6. Tests base directory</td><td>$prefix/test</td></tr></tbody><tr><td>7. Temporary files directory</td><td>$prefix/temp</td></tr><tr><td>8. PEAR Installer cache directory</td><td>$prefix/cache</td></tr><tr><td>9. Cache TimeToLive</td><td>300</td></tr><tr><td>10. Filename of WebFrontend</td><td>/home/(アカウント名)/www/pear.php</td></tr><tr><td>11. php.exe path, optional (CLI command tools)</td><td>/home/(アカウント名)/bin/php-cgi5</td></tr></table>

pear ディレクトリに全て収める設定です。
あちこち散らばると気持ち悪いですからね。

11. は、さくらでPHP5.2.3以上を使用している方なら、みんな一緒かしら？
ちなみにPHP5.2.3以降、PHPの本体名が php から php-cgi5 へ変更されています。
よってPHP5.2.2以下の方は /home/(アカウント名)/bin/php かな。

そして「Install」ボタンをクリックすると、ずらずら～っとログが並びます。
ログの下の方 Note: の PEAR Installation path を控えます。
/home/(アカウント名)/pear/PEAR
↑こんなかんじですね。さっきの 3. で設定したものです。


■手順２ php.ini のセッティング
PHPの設定ファイル php.ini へ、以下を追加します。
<blockquote>include_path = ".:/home/(アカウント名)/pear/PEAR"</blockquote>

PHPの include_path へ、先ほど控えた PEAR Installation path の値を設定してます。


■手順３ 各パッケージのインストール
Go-PEARの管理ページからパッケージをらくらくインストールします。

管理ページはブラウザで開きます。
管理ページのURLは、インストール時設定した 10. Filename of WebFrontend です。
私の例だと http://(ドメイン)/pear.php となります。

開いたら Quick-install a package にパッケージ名を入力し(ex. DB, XML_RSS etc..)、
「Install」ボタンをクリックすればインストールを自動でおこなってくれます。

パッケージ名の一部しかわからない場合は、
画面左側の「Package Search」メニューより、
キーワード検索をすることができます。

--------------------------------------------

以上で終了です。
作業が終了したら、最初にアップした go-pear.php と、
生成した管理ページ pear.php を削除するかパスワードをかけておきましょう。


■TIPS１ PEARの追加設定？
管理ページ左側「Configuration」メニューよりPEARの設定が確認できるのですが、
環境によるのか、私の場合は PHP CLI/CGI binary: の値が間違っていました。
<blockquote>/home/(アカウント名)/bin/php</blockquote>
を、以下へ修正しました。
<blockquote>/home/(アカウント名)/bin/php-cgi5</blockquote>

前述にもありますが、PHP 5.2.3 以上を使用している場合、
PHP本体のファイル名が php-cgi5 となるため、その為の修正です。
んーでもこれ、インストール時の 11. で設定しなかったっけ？
詳しくわかりません、ごめんなさい。念の為、再設定しました。
しなくても動くかもしれません。


あ、そうそう、作業中すっかり忘れてましたが、
PEARは ピア でなく ・・ペアでしたね。。

ペアペア、、

おつかれさまでした。

参考サイト
<a href="http://www.ooyashima.net/db/install_pear.htm" target="_blank">大八洲.NET - PEARのインストール</a>
<a href="http://phptips.seesaa.net/article/36638451.html" target="_blank">PHPを使ったWebサイト構築　備忘録 - さくらインターネットへのＰＥＡＲモジュールの追加インストール</a>
]]>
   </content>
</entry>
<entry>
   <title>携帯サイトで文字化け</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/07/post_14.php" />
   <id>tag:masha.maakikaku.jp,2007://1.289</id>
   
   <published>2007-07-07T05:20:26Z</published>
   <updated>2007-07-09T02:07:38Z</updated>
   
   <summary><![CDATA[ &nbsp; EUC-JPでパソコン向けに構築したサイトを携帯表示へ対応作業中...]]></summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2" label="PEAR" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="42" label="QuickForm" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="14" label="Smarty" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="43" label="モバイル" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="12" label="文字化け" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<p>
<img src="http://masha.maakikaku.jp/_upload/images/070707.gif" alt="070707.gif" width="400" height="300" />
&nbsp;<br />
EUC-JPでパソコン向けに構築したサイトを携帯表示へ対応作業中、文字化けに悩まされる、、ありがちですｗ
</p>
<p>
携帯電話はShift-JIS以外の文字コードへ未対応の機種が多い為、必然出力をShift-JISへ統一してやる必要がある。今回はパソコン向けに制作したEUC-JPのDB・PHPスクリプト・Smartyテンプレファイルをそのまま使用しつつ、出力のみShift-JISへ変更してやるということになる。以下のサイトを見つけ、参考に諸所作業。<br />
&rarr;ケータイ(モバイル)サイト構築ではまる：文字化け<br />
<a href="http://www.syrup-factory.com/b/archives/2006/02/post_1.php">http://www.syrup-factory.com/b/archives/2006/02/post_1.php</a>
</p>
]]>
      <![CDATA[<p>
・環境<br />
さくらのレンタルサーバ<br />
Apache 1.3.37<br />
PHP 5.2.1 (自分でインストール)
</p>
<p>
たいていあっさりShift-JIS化終了。 が、どうもフォーム部分だけ文字化けが解消しない。PEARのHTML_QuickFormを使用しているのだが、textareaへ日本語を入力して確認画面を表示しようとすると文字化けする。
</p>
<p>
試行錯誤した結果、どうやら内部エンコーディング(mbstring.encoding)が EUC-JP としてきちんと解釈されていなかったのが原因だった。
</p>
<p>
もちろん phpinfo() で mbstring.internal_encoding の値は確認した。が、どうしてきちんと解釈されてなかったのか？それはよくよくphpinfo()を確認すると、Local Value 列の mbstring.internal_encoding は EUC-JP になっていたのだが、Master Value 列の mbstring.internal_encoding は no value であったからだ。これは、php.ini側で値を設定をするのではなく、.htaccess や、phpファイル内で ini_set したとき、この状況となる。
</p>
<p>
<a href="http://ml.php.gr.jp/pipermail/php-users/2006-September/030872.html">http://ml.php.gr.jp/pipermail/php-users/2006-September/030872.html</a><br />
&uarr;あたりの記事を見ると、どうやらモジュールの中には、Master Value しかみないものがあるようだ。QuickForm はこれに該当するのかしら？ そこらへんの仕組みが私にはまだピンとこない・・。
</p>
<p>
このサイトがあるサーバでは、複数のサイトを突っ込み違う文字コードを使用していたので、PHPスクリプト側で mb_internal_encoding(&quot;EUC-JP&quot;); としていたのですが、これが仇となったようだ。よって、スクリプト側でなく、php.iniで mbstring.internal_encoding = EUC-JP としてやることで問題解消。
</p>
<p>
私の場合はphp.iniにて以下のような設定をし、
</p>
<blockquote>
	mbstring.encoding_translation = On<br />
	mbstring.http_input = auto<br />
	mbstring.internal_encoding = EUC-JP
</blockquote>
そして、携帯サイトのスクリプト冒頭にてこんな感じ<br />
(必要最低限の設定しかしてません）。<br />
<blockquote>
	mb_http_output(&quot;SJIS&quot;);<br />
	ob_start(&quot;mb_output_handler&quot;);
</blockquote>
<p>
PHPスクリプトで各値をprintさせてみると以下。
</p>
<blockquote>
	[DEBUG]mb_internal_encoding = EUC-JP<br />
	[DEBUG]mb_http_input = ASCII (フォーム確認画面時はSJISになる）<br />
	[DEBUG]mb_http_output = SJIS
</blockquote>
<p>
ちなみに、mbstring.http_inputもきちんと設定しないとダメだった。設定前のmb_http_inputは、たしか pass 。autoへ設定後は、通常ページではASCII、フォーム確認画面などの時はきちんとSJISになった。
</p>
]]>
   </content>
</entry>
<entry>
   <title>動的ページを静的URLで表示させる(PATH_INFO使用)</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/06/urlpath_info.php" />
   <id>tag:masha.maakikaku.jp,2007://1.285</id>
   
   <published>2007-06-28T14:13:43Z</published>
   <updated>2007-07-18T02:52:56Z</updated>
   
   <summary> 検索システムなど閲覧者が求める情報を動的に表示させるサイトでは、 http:/...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="36" label="Apache" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="3" label="さくらのレンタルサーバ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<p>
<img src="http://masha.maakikaku.jp/_upload/images/400-300.gif" alt="400-300.gif" width="400" height="300" />
<br />
検索システムなど閲覧者が求める情報を動的に表示させるサイトでは、<br />
<a href="http://masha.maakikaku.jp/index.php?mode=search&amp;type=hiphop">http://masha.maakikaku.jp/index.php?mode=search&amp;type=hiphop</a><br />
こんな感じにURLへ?やら&amp;やら引数がだらだらと付いていきます。<br />
サーチエンジン対策上このままじゃあかんということで、<br />
例えば上記のURLを下記の静的URLで表示させるようにしたい。<br />
<a href="http://masha.maakikaku.jp/index/search/hiphop.html">http://masha.maakikaku.jp/index/search/hiphop.html</a>
</p>
<p>
これを実現する為には様々な方法があるようなのですが、<br />
ベストの選択は Apache の mod_rewrite を利用する方法のようだ。<br />
が、私が使う 「さくらのレンタルサーバでは、mod_rewriteが利用できない」
</p>
<p>
・・という情報をどこかで見て何も考えず違う方法でがんばったのだが、<br />
やり終わった後に はっ&Sigma;(`Д&acute;；) と思い出しました、<br />
さくら、とりあえず今は mod_rewrite 使えるよね＿|＼●_<br />
<a href="http://faq.sakura.ne.jp/wiki/wiki.cgi?.htaccess#i5">http://faq.sakura.ne.jp/wiki/wiki.cgi?.htaccess#i5</a><br />
んあー・・なにやってんねんおれ・・一応折角やったのでメモ。。
</p>
<p>
.htaccess&nbsp;へ FilesMatch を設定し、<br />
phpファイルで PATH_INFO を取得する方法です。
</p>
]]>
      <![CDATA[<p>
・環境<br />
さくらのレンタルサーバ<br />
Apache 1.3.37<br />
PHP 5.2.1
</p>
<p>
・目的<br />
サイトのindex.phpを表示させる際、下記の動的なURLを、<br />
<a href="http://masha.maakikaku.jp/index.php?mode=search&amp;type=hiphop">http://masha.maakikaku.jp/index.php?mode=search&amp;type=hiphop</a><br />
以下の静的なURLでもアクセス可能にする。<br />
<a href="http://masha.maakikaku.jp/index/search/hiphop.html">http://masha.maakikaku.jp/index/search/hiphop.html</a>
</p>
<p>
<br />
■手順１ 拡張子の無いパスがPHPとして動作するようApacheへ設定<br />
index という文字を含むURLは、<br />
そのマッチした箇所をPHPのファイルとして認識させるよう、<br />
.htaccess へ以下のコマンドを追加。
</p>
<blockquote>
	&lt;FilesMatch &quot;^index$&quot;&gt;<br />
	AddType application/x-httpd-php<br />
	&lt;/FilesMatch&gt;
</blockquote>
<p>
静的URLを生成したいphpファイルが複数ある場合は、<br />
ひとつずつFilesMatchを設定していかなければならないようだ。
</p>
<p>
<br />
■手順２ PHP側で引数を取得処理<br />
PATH_INFO で ～index/ 以降のURL部分を取得し、<br />
「/」と「.」で $_SERVER[&quot;PATH_INFO&quot;] を分割し $param へ代入するよう、<br />
index.phpへ以下のような感じで仕込む。
</p>
<blockquote>
	$param = split(&quot;[/\.]&quot;, $_SERVER[&quot;PATH_INFO&quot;]);
</blockquote>
<br />
これで $param[0] に search が、$param[1] に hiphop が入る。<br />
（因みに$param[2]には html が入ってる。いらんけど。）
<p>
<br />
●注意１<br />
この処置を施すと、画像やCSSなどの相対パスがずれる。<br />
URL如何においても表示するファイルをindex.phpへ設定できたものの、<br />
<a href="http://masha.maakikaku.jp/index/search/">http://masha.maakikaku.jp/index/search/</a><br />
を基点とした相対パスになってしまうのだ。<br />
パスの指定に絶対パスを使うことで問題は解決はするのだが・・、<br />
相対パスのままどうにかする解決策は見つからなかった。<br />
<br />
mod_rewriteを利用した方法だと、<br />
この問題は発生しないようだ。。
</p>
<p>
<br />
●注意２<br />
デフォルトでさくらのPHPは、CGI扱いとして動作している。<br />
すると $_SERVER[&quot;PATH_INFO&quot;] が使用できないらしい。<br />
私の場合はPHP5を自分でインストールしたからか？普通に動いた。<br />
もしPATH_INFOが取得できない場合は以下のサイトを参考。<br />
&rarr;<a href="http://dozo.rgr.jp/log/eid288.html" target="_blank">さくらインターネットとmod_rewriteでpukiwikiのSEO対策</a>
</p>
<p>
<br />
●注意３<br />
PATH_INFOに %2F が含まれていると404エラーが発生するらしい。<br />
%2F は /(スラッシュ) のURLエンコードをかけた文字列。<br />
これはApache設定の AllowEncodedSlashes が Off になっているのが原因。<br />
解消するには以下のコードを追加しAllowEncodedSlashesを On にしてやる。
</p>
<blockquote>
	AllowEncodedSlashes On
</blockquote>
<p>
<br />
おつかれさまでした＿|＼●_
</p>
<p>
<br />
・参考サイト<br />
&rarr;<a href="http://tech.bayashi.net/svr/doc/apache/mod_rewrite.html" target="_blank">技林TOP &gt; 自宅サーバ構築メモ &gt; mod_rewrite</a><br />
&rarr;<a href="http://blog.su-jine.net/archives/2004/08/_path_info.html" target="_blank">動的だけど静的なページの作成 (PATH_INFO)<br />
</a>&rarr;<a href="http://blog.youscoope.jp/archives/18" target="_blank">mod_rewriteでURLをpathinfoベースに変更</a>
</p>
]]>
   </content>
</entry>
<entry>
   <title>さくらのレンタルサーバへPEARをインストール</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/06/pear.php" />
   <id>tag:masha.maakikaku.jp,2007://1.284</id>
   
   <published>2007-06-19T02:47:59Z</published>
   <updated>2008-02-11T08:28:24Z</updated>
   
   <summary>新しく記事を書き直しました。 →コマンドプロンプトを使わないで、さくらへPEAR...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2" label="PEAR" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="3" label="さくらのレンタルサーバ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<div class="caution">新しく記事を書き直しました。
→<a href="http://masha.maakikaku.jp/2007/12/_peargopear.php">コマンドプロンプトを使わないで、さくらへPEARをインストール（Go-PEAR使用）</a></div>

さくらのレンタルサーバにて新しいサイトを制作中、「PEARのDBが見つかりませんよ！（failed to open stream: No such file or directory～）」みたいなエラーが発生。調べるのもめんどくさいので、私のホームディレクトリ（/home/maakikaku以下）へPEARをインストール。確か以前もやりました（以前の日記→<a href="http://masha.maakikaku.jp/2007/04/pear_1.php">さくらのレンタルサーバでPEARインストール</a>。このときは参考サイトのまんまインストール、すると当たり前だが余計なディレクトリとか出来まくり＿|＼●_ 精神衛生上よくないので再びちゃんとトライします。
]]>
      <![CDATA[・環境
レン鯖：さくらのレンタルサーバ
アカウント：maakikaku


■手順１ Go-PEARでPEARインストール準備
Go-PEAR というPEARの土台を自動でインストールしてくれるモジュールを利用する。

<a href="http://go-pear.org/">http://go-pear.org/</a> より go-pear.php と名前を付けてモジュールをダウンロードし、
FTPにて /home/maakikaku/www/ へアップロード。
そしてブラウザから go-pear.php へアクセスし、Next >> をクリックした後、
インストールに関する設定を、私は以下のようにいじった。
<blockquote>「1. Installation prefix」→ /home/maakikaku/share/pear5/
「3. PHP code directory ($php_dir)」→ $prefix
「11. php.exe path, optional ～」→ /usr/local/bin/php</blockquote>

1.をこのパスにした理由は、これが現在私の鯖でPEARのパスになっていたから。
先日PHP5をインストールしたことで、初期設定とは変化しているかもしれません。
phpinfo()のinclude_pathからパスを調べて各々それに設定した方がよいでしょう、
これで後々php.iniなどをいじらなくてもPEARへのパスが通るようになります。。
以降全てこの /share/pear5 へインストールするようセッティングしていきます。

3.をいじった理由も1と同じ。11.はさくらならこれでみんなＯＫだと思います。


■手順２ .cshrcファイル設定追加
ホームディレクトリにある .cshrc へPEARの設定を追加する。
通常はtelnetでやるのだろうけど、コマンドが苦手＿|＼●_
私は .cshrc をFTPでダウンロードして直接エディタで編集。
内容は以下。17行目付近、
<blockquote>set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin $HOME/bin)</blockquote>
を、以下のように変更する。
<blockquote>set path = (~/share/pear5/bin /sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin $HOME/bin)</blockquote>

第1引数に ~/share/pear5/bin を追加した感じですね。
因みにチルダは $HOME を表すそうです。


■手順３ PEARセッティング
PEARの基本設定は .pearrc というファイルが受け持つ。
ホームディレクトリ直下へこのファイルを新規生成し諸所設定を施す。

まずはtelnetを立ち上げ、 .pearrc を新規作成。
<blockquote>pear config-create /home/maakikaku .pearrc</blockquote>
そして諸所設定。
<blockquote>pear config-set bin_dir /home/maakikaku/share/pear5/bin
pear config-set download_dir /home/maakikaku/share/pear5/temp
pear config-set temp_dir /home/maakikaku/share/pear5/temp
pear config-set php_dir /home/maakikaku/share/pear5
pear config-set doc_dir /home/maakikaku/share/pear5/docs
pear config-set ext_dir /home/maakikaku/share/pear5/ext
pear config-set cache_dir /home/maakikaku/share/pear5/cashe
pear config-set data_dir /home/maakikaku/share/pear5/data
pear config-set test_dir /home/maakikaku/share/pear5/test</blockquote>
なるたけ/share/pear5/の中に全ファイル納めようと必死ですｗ


■手順４ PEARインストール
引き続きtelnetでPEARをインストールしていく。
まずは本体をインストール。
<blockquote>pear install PEAR</blockquote>
するとインストールはきちんといくが、「Warning！pear.php.netがなんたらで、"channel-update pear.php.net"で至急アップデートして！」みたいなメッセージが出る。よくわからないがその指示通りアップデート。
<blockquote>pear channel-update pear.php.net</blockquote>
すると今度は「インストール自体には支障ないけどXML_RPCがないよ！」みたいなメッセージが出てくる、たぶんｗよくわからないが指示通りXML_RPCをインストール。
<blockquote>pear install XML_RPC</blockquote>
で、やっとこさここでお目当てのDBをインストール。
<blockquote>pear install DB</blockquote>
すると「DBのインストールはうまくいったけど、DBはMDB2も使うからそれもいれといて！」みたいなメッセージが出るｗよくしゃべるなこのサーバは・・と思いつつMDB2もインストール。
<blockquote>pear install pear/MDB2</blockquote>


これで終わり。php.iniの設定は、元々の設定ディレクトリにPEARをインストールしたので、新たに設定する必要なし。PHP5を追加インストールしているとphp.iniを置くのがめんどくさいのでこうした方がいいかなぁと。。あ、そうそう、因みに皆さんここまでPEARを何と読んでました？ピアでなく。・・ペアと読むそうです。。

おつかれさまでした。]]>
   </content>
</entry>
<entry>
   <title>WindowsへXAMMPをインストール</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/06/windowsxammp.php" />
   <id>tag:masha.maakikaku.jp,2007://1.281</id>
   
   <published>2007-06-10T06:59:53Z</published>
   <updated>2008-02-11T08:28:01Z</updated>
   
   <summary>新しく記事を書き直しました。 →WindowsXP へ XAMPP をインストー...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="36" label="Apache" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="11" label="MySQL" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="phpMyAdmin" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="30" label="WINDOWS" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="7" label="XAMPP" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<div class="caution">新しく記事を書き直しました。
→<a href="http://masha.maakikaku.jp/2008/02/windowsxp_xampp.php">WindowsXP へ XAMPP をインストール</a></div>

Apach + PHP4&5 + MySQL + PHPMyAdmin などをPCへ一括インストールできる XAMMP 。一括インストールしてくれるだけでなく、ApacheやMySQLをGUIで手軽にコントロールできるし、PHP4と5の切り替えも対応。こんな便利モノ開発してくれている方々には、ほんま感謝せなあかんとね、、前回の日記が古くなったので、新しくメモします。

]]>
      <![CDATA[目的：Windowsにて、制作中のサイトをチェックできる環境を構築
OS：Windows XP SP2
INSTVER：XAMMP 1.6.2
（Apache 2.2.4、MySQL 5.0.41、PHP 5.2.2、PHP 4.4.7、phpMyAdmin 2.10.1 etc..）

-----------------------------------------------
<strong>■手順１ XAMMPインストール</strong>
下記ページより、Windows用のXAMMPをダウンロードし、展開＆インストール。
→<a href="http://www.apachefriends.org/jp/xampp-windows.html" target="_blank">XAMMP公式 XAMMP for Windows</a>

・インストール方法参考サイト
→<a href="http://phpspot.net/php/pgXAMPP.html" target="_blank">http://phpspot.net/php/pgXAMPP.html</a>
→<a href="http://www.thinkit.co.jp/free/article/0701/12/3/" target="_blank">http://www.thinkit.co.jp/free/article/0701/12/3/</a>

インストール先はデフォルト設定 c:\xampp のままでなく、
制作中のhtmlファイルなどを置くドライブのディレクトリにした方がよい。
私の場合は Fドライブの www フォルダ以下をWEB関係の制作フォルダにしているので、
F:\www と指定してインスト。
（＊以降断りが無い限り、Windows上のパス表記はこの F:\www をルートとしています）


<strong>■手順２ 日本語バグ修正</strong>
セキュリティ設定画面用の日本語ファイルをインストール、ってかコピー。
htdocs\xampp\lang に入っている jp.php を、security\htdocs\lang へコピー。
それだけ。


<strong>■手順３ MySQL初期設定</strong>
MySQL初期アカウント"root"のパスワードを設定する。

ブラウザから http://localhost/xampp/ へアクセス。
「日本語」を選択、XAMPP管理トップページを表示し、「セキュリティ」をクリック。
下の方「=> <a href="http://localhost/security/xamppsecurity.php" target="_blank">http://localhost/security/xamppsecurity.php</a> 」をクリックし、
「MySQLのセキュリティコンソール & XAMPPのディレクトリ制御」ページを開き
「MYSQL 項目: "ROOT" パスワード」を適宜設定。


<strong>■手順４ WEB用のデータを移す</strong>
WEB用のデータたちを htdocsフォルダへ全て移す。
これでブラウザから http://localhost/○○ としてサイトが見れるようになります。
-----------------------------------------------


以上おつかれさまでした。。
以下はその他TIPSです。


<strong>■Perlもインストール</strong>
下記ページより、Windows用XAMMPのPerlアドオンをダウンロードし、展開＆インストール。
→<a href="http://www.apachefriends.org/jp/xampp-windows.html#2675" target="_blank">XAMPP Windows版 アドオン</a>

一般的なサーバでのPerlのパスは usr/bin/perl か usr/local/bin/perl。
それをそのままローカルで使えるようにしたいので、
インストールしたドライブ直下に usr/bin または usr/local/bin のシンボリックリンクを作成。
私の場合は、linkd F:\usr F:\www\perl とコマンド。
シンボリックリンクの作成方法については、以下日記の「■手順３■」を参照。
→<a href="http://masha.maakikaku.jp/2007/06/dreamwerver_smarty.php" target="_blank">Dreamwerver で Smarty</a>


<strong>■パブリックフォルダの変更</strong>
デフォルトでは htdocs フォルダ以下がブラウザで表示されるようになっている。
が、XAMMPを中途導入した際などは、他ソフトの諸所設定を変更するのがめんどい為、
どうしても他のフォルダを表示設定させたい場面がある。
その場合はApacheの設定ファイルを変更する。

apache\conf\httpd.conf を開き、下記該当２箇所を適宜パスへ変更
176行目付近 DocumentRoot "F:/www/htdocs"
203行目付近 <Directory "F:/www/htdocs" target="_blank">

パスを変更した場合は、元々 htdocs に入っているコンテンツを、
変更されたフォルダへ全て移す。(xampp の管理画面などが入っている為）


<strong>■XAMMPのアンインストールについて</strong>
MySQLのデータとhtdocsフォルダについては、
アンインストール中に、削除するかどうか選択できるようになっている。
よってその２つのフォルダに収納していたデータについては、
アンインストール前に隔離するなど特別な対処は必要ない。
逆に言えば他のフォルダになにか自分で追加したデータがある際は、
隔離しておかないと一緒に消されてしまうので注意。

＊070615追記
・・と書いたが、残ったMySQLのデータが何かの拍子で消えてしまっていた。
再びXAMMPをインストールした際、消されて、または上書き？されてしまったのか？？
とにかくやっぱり必要なフォルダはバックアップしといた方がよいです。。


<strong>■MySQL+phpMyAdminでの日本語の取り扱い</strong>
phpMyAdmin上にてテーブルを新規作成する際、
照合順序へ何も指定がないとデフォルトで latin1_general_ci となる。
これはもちろん日本語が取り扱えないので注意。
utf8_unicode_ci(UTF-8) や ujis_japanese_ci(EUC-JP) などに適宜設定。

その他MySQLやphpMyAdminに関する日本語の取り扱い、及び文字化けTipsは以下参考に。
→<a href="http://www.artful.jp/blog/archives/2006/07/xamppmysqlphpmy.html" target="_blank">[masha.webTechLog]XAMPP＋～（PHP+MySQL の文字化け）</a>
→<a href="http://www.artful.jp/blog/archives/2006/07/xamppmysqlphpmy.html" target="_blank">xampp：Mysqlに関するPHPMyAdminの文字化け</a>
→<a href="http://www.artful.jp/blog/archives/2007/05/xamppphpmyadmin.html" target="_blank">XamppのphpMyAdminの文字化けーその２</a>
→<a href="http://phpspot.org/blog/archives/2005/06/mysql41_1.html" target="_blank">[phpspot開発日誌]MySQL4.1の文字化け対策</a>


<strong>■ページが表示されない。500 Errorをはいてしまう。</strong>
.htaccessファイルに RewriteEngine 関係のコマンドがあると、
私のローカル環境では 500 Error をはいてしまう。
仕方ないので.htaccessファイルはローカルに置かないこととした。]]>
   </content>
</entry>
<entry>
   <title>PHP4でSmarty、tplファイルしか表示されないのは参照渡しが原因でした</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/06/php4smartytpl.php" />
   <id>tag:masha.maakikaku.jp,2007://1.280</id>
   
   <published>2007-06-09T03:30:35Z</published>
   <updated>2007-07-03T02:10:19Z</updated>
   
   <summary> PHP4でSmartyを使用した際 $smarty-&gt;assign(); が効...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="14" label="Smarty" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<img alt="php4%2Bsmarty.gif" src="http://masha.maakikaku.jp/_upload/images/php4%2Bsmarty.gif" width="400" height="300" />
PHP4でSmartyを使用した際 $smarty->assign(); が効かず、
tplファイルしか表示されないという状態が発生。
実は先月くらいから悩んでいたのですが、目をそらしてましたｗ

]]>
      <![CDATA[結論から言うと、参照渡し がきちんとされていなかったことが原因。
PHP5での引数受け渡しは、デフォルトで全て 参照渡し となるらしいのですが、
PHP4では 値渡し というのがデフォルトで、普通に関数へnewした$smartyなどを渡すと、
まったく違うオブジェクトとして解釈されてしまうとのこと。

私の解決方法は、
・<strong>一番初めの、関数の引数の前へ & を付ける</strong>
・<strong>全ての関数内で、クラスの引数を受け取る際 = ではなく =& を使用する</strong>
です。

・一番初めの、関数の引数の前へ & を付ける
は、例えば以下のようにPHP5でやっていたのを、
<blockquote>$smarty = new Smarty;
$option = array("smarty" => $smarty, "○○" => $○○);
$file   = main($option);
$smarty->display($file);</blockquote>
以下のようにPHP4では変えました。
<blockquote>$smarty = new Smarty;
$option = array("smarty" => &$smarty, "○○" => $○○);
$file   = main($option);
$smarty->display($file);</blockquote>
最初に呼び出す親的な関数の引数部分でだけ&を付ければいいようで、
以後その関数内でさらに関数を呼び出す際は、この対処は不要のようです。

・全ての関数内で、クラスの引数を受け取る際 = ではなく =& を使用する
は、例えば以下のようにPHP5でやっていたのを、
<blockquote>function main($option)
{
&nbsp;&nbsp;$smarty&nbsp;=&nbsp;$option['smarty'];
&nbsp;&nbsp;$○○&nbsp;&nbsp;&nbsp;=&nbsp;$option['○○'];
}</blockquote>
以下のようにPHP4では変えました。
<blockquote>function main($option)
{
&nbsp;&nbsp;$smarty&nbsp;=&&nbsp;$option['smarty'];
&nbsp;&nbsp;$○○&nbsp;&nbsp;&nbsp;=&nbsp;$option['○○'];
}</blockquote>

私みたいな最近PHPを始めた方で、
↓のサンプルコードをPHP4の環境で試した方は、
けっこうはまるんじゃないかなぁ・・。
→<a href="http://book.mycom.co.jp/support/bookmook/PHP/" target="_blank">速効!図解プログラミングPHP+MySQLサポート</a>


以下参考にしたサイトです。
→<a href="http://q.hatena.ne.jp/1177310771" target="_blank">Smartyを使用し画面出力を行おうとしていますが実際に...</a>
→<a href="http://d.hatena.ne.jp/shimooka/searchdiary?word=Perl" target="_blank">「Yahoo!がPHPエンジニアを雇う時に聞く質問」に解答付けてみた</a>、の４番
→<a href="http://blog.so-net.ne.jp/nakagami/2005-11-10" target="_blank">PHP4 と PHP5 の違い</a>
→<a href="http://oshiete.nikkeibp.co.jp/qa2541968.html" target="_blank">コンストラクタで参照渡しをする理由</a>


おつかれさまでした。。]]>
   </content>
</entry>
<entry>
   <title>Dreamwerver で Smarty</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/06/dreamwerver_smarty.php" />
   <id>tag:masha.maakikaku.jp,2007://1.207</id>
   
   <published>2007-06-02T03:02:29Z</published>
   <updated>2007-07-03T02:10:19Z</updated>
   
   <summary> Dreamwerver上でSmartyを扱いたい。 求める機能は以下4点。 ・...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="20" label="Dreamweaver" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="14" label="Smarty" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<img alt="Macromedia-Dreamweaver.gif" src="http://masha.maakikaku.jp/_upload/images/Macromedia-Dreamweaver.gif" width="400" height="300" />
Dreamwerver上でSmartyを扱いたい。

求める機能は以下4点。
・TPLファイルを関連付けさせる
・ヘッダーなどの<{include file="○○.tpl"}>を、デザインビュー上できちんと表示させる
・独自デリミタ（<{～}>）に対応させる
・CSSやJavascriptの読み込みに対応させ、画像もデザインビュー上で表示させる

いろいろ探したのだが、各方法一長一短。
どうにも設定が反映されないことも多く、半日以上右往左往＿|＼●_
３つの方法を組み合わせつつ、やっとこさまぁまぁの環境を実現。。
以下メモ。。。]]>
      <![CDATA[■手順１■
まずは、Macromedia Extension Managerを使って以下のエクステンションをインストール。
→<a href="http://yossy.iimp.jp/wp/?p=43" target="_blank">DreamweaverでSmarty テンプレートをイケてる感じで編集しよう。</a>
エクステンションなので簡単にインストールできます（感謝☆）。
こちらで以下の機能は実現。
・TPLファイルを関連付けさせる
・ヘッダーなどの<{include file="○○.tpl"}>を、デザインビュー上できちんと表示させる
（＊デリミタが初期設定（{～}）ならば、ここでそれも対応解決）


■手順２■
独自デリミタ（<{～}>）へ対応させる為に、
以下サイトより dreamweaver_smartytags.zip をダウンロード。
→<a href="http://www.contactlensesprice.com/smarty/" target="_blank">Smarty Dreamwerver</a>

展開後、smarty.xml のデリミタ指定っぽい箇所を適宜修正。
そしてDreamwerverのインストールフォルダ内、Configuration\ThirdPartyTags へ突っ込む。

一応私のsmarty.xmlファイルを、以下へアップロードしておきました。
→<a href="http://masha.maakikaku.jp/_upload/archive/smarty.zip">ファイルをダウンロード</a>



■手順３■
Smartyではtplファイルと実際の公開ファイルとのディレクトリが違うため、
CSSやJavascript、それに画像などのパスも通らない。
Windowsのシンボリックリンクを使用することでその問題を解決する。

- 手順3.1 -
まずは Windows Server 2003 Resource Kit Tools をダウンロード。
インストールはせず、中から linkd.exe だけを抜き出し、
Windowsのコマンドとしてパスの通ったフォルダ、C:\WINDOWS\system32 なんかに放る。
参考→<a href="http://kawa.at.webry.info/200607/article_1.html" target="_blank">linkd.exeを使ってCドライブの空き容量を増やす</a>

- 手順3.2 -
コマンドプロンプトを立ち上げ、シンボリックリンクを作成する以下のコマンドを実行。
<blockquote>linkd (仮想側パス) (実際のパス)</blockquote>
つまり、
<blockquote>linkd (tplファイルのフォルダパス) (CSSなどの通したいファイルがあるフォルダパス)</blockquote>
という感じでしょうか。。
参考→<a href="http://d.hatena.ne.jp/himazublog/20050702/1125519841" target="_blank">Windowsでシンボリックリンク</a>

私の場合は、CSSやJavascriptなどを置く_incフォルダと、画像を置く_imgフォルダを、
tplファイルのあるフォルダへ以下のコマンドにてシンボリックリンクさせた。
<blockquote>linkd F:\maakikaku.jp\smarty\tpl\_inc F:\maakikaku.jp\www\_inc
linkd F:\maakikaku.jp\smarty\tpl\_img F:\maakikaku.jp\www\_img</blockquote>


以上３手順にて、やっとこんな感じのデザインビューを実現しました。。
<img alt="070607.gif" src="http://masha.maakikaku.jp/_upload/images/070607.gif" width="564" height="518" />


おつかれさまでした。。]]>
   </content>
</entry>
<entry>
   <title>MySQLの自動バックアップ phpMyBackupPro</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/05/mysql.php" />
   <id>tag:masha.maakikaku.jp,2007://1.202</id>
   
   <published>2007-05-28T11:50:41Z</published>
   <updated>2007-07-03T02:10:19Z</updated>
   
   <summary> さくらのレンタルサーバにて、MySQLの自動バックアップをとる。 phpMyB...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="11" label="MySQL" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<img alt="logo.png" src="http://masha.maakikaku.jp/_upload/images/logo.png" width="166" height="45" />
さくらのレンタルサーバにて、MySQLの自動バックアップをとる。
<a href="http://www.phpmybackuppro.net/">phpMyBackupPro</a> v2.1 を利用しました。
参考サイトが少なくて大変・・、メモメモ。。

]]>
      <![CDATA[・必要環境
PHPがおそらく4.3以上

・私のインストール環境
さくらのレンタルサーバ
Apache 1.3.37
PHP 5.2.1
MySQL 4.0.27


■１■準備
<a href="http://www.phpmybackuppro.net/">公式サイト</a>より、本体と日本語パックをダウンロードし、展開。
日本語パックは、モジュール内の language フォルダ以下へ展開。


■２■アップロード
公開ディレクトリ(例：/home/(ユーザー名)/www/cgi-bin/phpMyBackupPro)へ、
FTPソフトなどを使用しアップロード

＊global_conf.php (設定ファイル） と export ディレクトリ（バックアップファイル書き出しディレクトリ）は、セキュリティの観点から非公開ディレクトリへの設置が推奨されています。わかる人はそちらの方がいいです。その際は definitions.php の $_PMBP_GLOBAL_CONF と $_PMBP_EXPORT_DIR を適切に編集。


■３■初期設定
ブラウザから config.php にアクセスし、初期設定。
MySQLの設定以外は後でもいいです。
とりあえず language を japanese に設定しておいたり。


■４■自動実行用cron設定
引き続きブラウザでさくらインターネットのコントロールパネルにログインし、
左メニュー「CRON設定ファイルの編集」→右中段テキスト「新規項目の追加」と進み、
"実行するコマンド"を編集する。並べる引数の説明は以下。
<blockquote>第1引数：PHP本体モジュールへのパス
第2引数：backup.php へのパス
第3引数：DB名(さくらの場合ユーザー名)
第4～7引数：おまじない。(1を半角区切りで4つ並べる)</blockquote>
各引数は半角スペース区切りで記述します。
私の例だと以下となりました(ユーザー名：maakikaku）。
<blockquote>/usr/local/bin/php /home/maakikaku/cgi-bin/phpMyBackupPro/backup.php maakikaku 1 1 1 1</blockquote>
その他の入力項目は、説明書きを読めばなんとなくわかると思います。


CRONの実行結果は、
さくらでは postmaster@あなたのドメイン 宛にメールにて届くようです。
エラーメッセージなどはこのメールをみて確認します。
エラーなどのメッセージがいらない場合はコマンドへ以下オプションをつける。
<blockquote>(PHPモジュールへのパス) (backup.phpへのパス) (DB名) 1 1 1 1 > /dev/null</blockquote>


おつかれさまでした。。


・参考サイト
→<a href="http://imai.studiobrain.net/archives/000504.php" target="_blank">MySQLの簡単自動バックアップ</a>
→<a href="http://www.dayofglory.jp/archives/ent-000014.html" target="_blank">phpMyBackupProでMySQLを簡単バックアップ（1）</a>
→<a href="http://www.dayofglory.jp/archives/ent-000015.html" target="_blank">phpMyBackupProでMySQLを簡単バックアップ（2）</a>
→<a href="http://www.okanoweb.net/employment/cron.shtm" target="_blank">さくらサーバでＣＲＯＮ</a>

MySQLの自動バックアップは、他にも下記のようなアプリケーションがあるようです。
→<a href="http://gigazine.net/index.php?/news/comments/20060730_automysqlbackup/" target="_blank">MySQLを自動バックアップする「AutoMySQLBackup」</a>
]]>
   </content>
</entry>
<entry>
   <title>さくらのレンタルサーバ へ PHP5.2.2 をインストールした</title>
   <link rel="alternate" type="text/html" href="http://masha.maakikaku.jp/2007/05/_php522.php" />
   <id>tag:masha.maakikaku.jp,2007://1.200</id>
   
   <published>2007-05-22T07:35:25Z</published>
   <updated>2007-07-03T02:10:19Z</updated>
   
   <summary> ・・以前一度やったのにめもり忘れてた＿|＼●_ 股いろいろ調べなおしたので忘れ...</summary>
   <author>
      <name>磨者(MAAKIKAKU)</name>
      <uri>http://www.maakikaku.jp/</uri>
   </author>
         <category term="WEB備忘録" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="5" label="PHP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="3" label="さくらのレンタルサーバ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://masha.maakikaku.jp/">
      <![CDATA[<img alt="php.gif" src="http://masha.maakikaku.jp/_upload/images/php.gif" width="200" height="120" />
・・以前一度やったのにめもり忘れてた＿|＼●_
股いろいろ調べなおしたので忘れずメモ・・。

]]>
      <![CDATA[<strong>■１■PHP5モジュール用意</strong>
UNIX版 PHP5.2.2 を以下よりダウンロードし解凍。
→<a href="http://www.php.net/downloads.php" target="_blank">http://www.php.net/downloads.php</a>


<strong>■２■conf.sh ファイル作成</strong>
conf.sh ファイルを新規作成し 解凍した php-5.2.2 フォルダに突っ込む。
（configureファイルと同階層になるはず）

私の場合、conf.sh ファイルの中身は下記。
<blockquote>#!/bin/sh

./configure \
--prefix=$HOME \
--with-config-file-path=$HOME/www/cgi-bin \
--program-suffix=5 \
--with-pear=$HOME/share/pear5 \
--enable-force-cgi-redirect \
--enable-mbstring=all \
--enable-mbregex \
--enable-mbstr-enc-trans \
--enable-versioning \
--enable-trans-sid \
--with-mysql \
--with-openssl=/usr \
--with-soap=yes \
--with-zlib=/usr \
--with-gd=/usr/local \
--with-jpeg-dir=/usr \
--with-freetype-dir=/usr \
--with-ttf \
--with-png-dir=/usr \
--with-curl \
--with-iconv=/usr/local</blockquote>


<strong>■２■本体アップロード</strong>
FTPソフトなどを使用し、バイナリモードにてサーバへ直接フォルダごとアップ。
場所は、wwwの上あたりに適当なディレクトリを新規作成しそこへ。
単に作業用なので例えば /home/（ユーザー名）/_temp などお好きに。
（※以降PHP5のソースをアップしたディレクトリは _temp と仮定します。。）

6,000ファイル弱あるので、ちょっと時間かかります。


<strong>■３■configure のパーミッション変更</strong>
引き続きFTPソフトにて、PHP5 をインストールしたフォルダの、
configure ファイルのパーミッションを 755 に変更する。


<strong>■４■conf.sh を実行</strong>
telnetで接続し（telnetについては<a href="http://masha.maakikaku.jp/2007/04/pear_1.php" target="_blank">こちら記事参考</a>）、例えばこんな感じにて↓
<blockquote>cd _temp</blockquote>
<blockquote>cd php-5.2.2</blockquote>
PHP5をアップしたディレクトリの中へ移動。

そして、
<blockquote>sh conf.sh</blockquote>
とコマンドし、conf.sh を実行。Makefile を作成させます。

メッセージがだらだら表示された後、
"thank you for using PHP" と表示されればＯＫ。


<strong>■５■shtool のパーミッション変更</strong>
FTPソフトに戻り、下記ファイルのパーミッションを 755 に変更する。
<blockquote>/home/(アカウント名)/_temp/php-5.2.2/build/shtool</blockquote>


<strong>■６■インストール</strong>
telnetに戻り、以下のコマンドを実行。
<blockquote>%setenv PHP_PEAR_CACHE_DIR /home/(アカウント名)/_cashe/php5/pear;</blockquote>
（＊上記コマンドの説明は右記サイト記事にて→<a href="http://www.koruri.com/dielectric/archives/200611/10000591.html" target="_blank">誘電体に乾杯</a>）


引き続き以下コマンドを実行し、インストールを実行する。
<blockquote>make install</blockquote>

＊もし途中でエラーが出たら、ググって対応ｗ
  対応をとった後、再び make install でインストールが継続される。


<strong>■７■cgi-binディレクトリ作成</strong>
引き続きtelnetにて、
<blockquote>cd www</blockquote>
で公開トップの www ディレクトリへ移動し、
<blockquote>mkdir cgi-bin</blockquote>
で cgi-bin ディレクトリを作成する。
FTPソフトで作成しても構わない。


<strong>■８■php5モジュールのハードリンク作成</strong>
上記手順で作成した cgi-bin 内に、php5モジュールのハードリンクを作成する。
引き続きtelnetにて、
<blockquote>cd</blockquote>
として /home/(アカウント名) ディレクトリまで戻り、
<blockquote>ln ~/bin/php5 ~/www/blog/cgi-bin/php5.cgi</blockquote>
と実行（コマンド名は小文字のエル・エヌ、最初アイ・エヌと間違えたｗ）。

＊cp は諸所不都合。理由は<a href="http://www.koruri.com/dielectric/archives/200610/30000585.html" target="_blank">誘電体に乾杯 さんの該当記事後半</a>。
よってサブドメインを利用している際は、さらに各サブドメインの実ディレクトリ別に同じ作業をする必要がある。

ここでtelnet終わり。


<strong>■９■.htaccessファイルを作成orカスタム</strong>
/home/(アカウント名)/www の下に .htaccess を作成する。
既にあるのであれば、下記のコマンドラインを追加する。

<blockquote>Action php5-script /cgi-bin/php5.cgi<br />
AddHandler php5-script .php</blockquote>


------------------------------------------------------


おつかれさまでした（´ω、`）]]>
   </content>
</entry>

</feed>
