<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>GettingOUT &#187; CakePHP</title>
	<atom:link href="http://mori.moripower.jp/category/eqwip/cakephp/feed" rel="self" type="application/rss+xml" />
	<link>http://mori.moripower.jp</link>
	<description>ロングボーダー社長のブログ</description>
	<lastBuildDate>Sun, 05 Feb 2012 15:04:11 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>$script_for_layout にスタイルシートCSSを展開する</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/1124.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/1124.html#comments</comments>
		<pubDate>Sat, 19 Mar 2011 09:28:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=1124</guid>
		<description><![CDATA[久しぶりのCakePHPネタです。（CakePHP1.3) Viewごとに、「適用するCSSスタイル、Javaスクリプトを変えたい！」という時は、レイアウトにある$script_for_layoutを活用する。 （１）例 [...]]]></description>
			<content:encoded><![CDATA[<p>久しぶりのCakePHPネタです。（CakePHP1.3)</p>
<p>Viewごとに、「適用するCSSスタイル、Javaスクリプトを変えたい！」という時は、レイアウトにある$script_for_layoutを活用する。</p>
<p><strong>（１）</strong>例えば、default.ctp　に・・・</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; <br />
&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;<br />
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;ja&quot; lang=&quot;ja&quot;&gt;<br />
&lt;head&gt;<br />
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">Html</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">charset</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span><br />
&lt;title&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$title_for_layout</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/title&gt;<br />
&lt;meta http-equiv=&quot;content-style-type&quot; content=&quot;text/css&quot; /&gt;<br />
<span style="color: #000000; font-weight: bold;">&lt;?php</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">//==================================================</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// CSS、Script</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">//==================================================</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">Html</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">css</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'style'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$scripts_for_layout</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span><br />
&lt;/head&gt;</div></div>
<p><strong>（２）</strong>スタイルを適用したいViewに下記を記述する。</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">Html</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">css</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'pdf'</span><span style="color: #339933;">,</span> <br />
　　　　<span style="color: #0000ff;">'stylesheet'</span><span style="color: #339933;">,</span> <a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'media'</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'all'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'inline'</span><span style="color: #339933;">=&gt;</span><span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></div></div>
<p><strong>（３）</strong>これで、$script_for_layout部分にスタイルが展開される。</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">&lt;!</span>DOCTYPE html <span style="color: #000000; font-weight: bold;">PUBLIC</span> <span style="color: #0000ff;">&quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;</span><br />
&nbsp;<span style="color: #0000ff;">&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;</span><span style="color: #339933;">&gt;</span><br />
<span style="color: #339933;">&lt;</span>html xmlns<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;http://www.w3.org/1999/xhtml&quot;</span> xml<span style="color: #339933;">:</span>lang<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;ja&quot;</span> lang<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;ja&quot;</span><span style="color: #339933;">&gt;</span><br />
<span style="color: #339933;">&lt;</span>head<span style="color: #339933;">&gt;</span><br />
<span style="color: #339933;">&lt;</span>meta http<span style="color: #339933;">-</span>equiv<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;Content-Type&quot;</span> content<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;text/html;charset=utf-8&quot;</span><span style="color: #339933;">/&gt;</span><br />
<span style="color: #339933;">&lt;</span>title<span style="color: #339933;">&gt;</span>タイトル<span style="color: #339933;">&lt;/</span>title<span style="color: #339933;">&gt;</span><br />
<span style="color: #339933;">&lt;</span>meta http<span style="color: #339933;">-</span>equiv<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;content-style-type&quot;</span> content<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;text/css&quot;</span> <span style="color: #339933;">/&gt;</span><br />
<span style="color: #339933;">&lt;</span><a href="http://www.php.net/link"><span style="color: #990000;">link</span></a> rel<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;stylesheet&quot;</span> type<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;text/css&quot;</span> href<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;style.css&quot;</span> <span style="color: #339933;">/&gt;</span><br />
<span style="color: #339933;">&lt;</span><a href="http://www.php.net/link"><span style="color: #990000;">link</span></a> rel<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;stylesheet&quot;</span> type<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;text/css&quot;</span> href<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;pdf.css&quot;</span> media<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;all&quot;</span><span style="color: #339933;">/&gt;</span><br />
<span style="color: #339933;">&lt;/</span>head<span style="color: #339933;">&gt;</span></div></div>
<p>※$this->html->cssは、第3引数に &#8216;inline&#8217;=>falseを記載すること。<br />
これがないと、定義したViewの部分に展開される。<br />
※CakePHP1.2の場合は、第4引数に記載していたようです。</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/1124.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Error: The requested address &#8221; was not found on this server</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/1059.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/1059.html#comments</comments>
		<pubDate>Thu, 23 Dec 2010 00:22:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=1059</guid>
		<description><![CDATA[そんなＵＲＬは、ないよというエラー。 CakePHPを、Debug.level：2で開発していて、本番環境に移した際に遭遇した。 ※他のサイトを参考に、Debug.level：1にして実行すると直った。その後、Debug [...]]]></description>
			<content:encoded><![CDATA[<p>そんなＵＲＬは、ないよというエラー。<br />
CakePHPを、Debug.level：2で開発していて、本番環境に移した際に遭遇した。</p>
<p>※他のサイトを参考に、Debug.level：1にして実行すると直った。その後、Debug.level：2にしても大丈夫でした。</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/1059.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JQueryのUploadifyをCakePHPで使用する。その後・・・</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/672.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/672.html#comments</comments>
		<pubDate>Tue, 06 Apr 2010 09:47:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[エクウィップメント]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=672</guid>
		<description><![CDATA[以前、書きかけの「AjaxアップローダーのUploadifyをCakePHPで使う方法」の続編です。 まずは、おさらいで、「基本的な流れ」の確認 (5)は削除です・・・。 JQuery、Uploadifyのスクリプトをヘ [...]]]></description>
			<content:encoded><![CDATA[<p>以前、書きかけの「AjaxアップローダーのUploadifyをCakePHPで使う方法」の続編です。</p>
<p>まずは、おさらいで、「基本的な流れ」の確認<br />
(5)は削除です・・・。</p>
<ol>
<li>JQuery、Uploadifyのスクリプトをヘッダー内で定義する。</li>
<li>UploadfyのCSSをヘッダー内で定義す る。</li>
<li>ビュー（～.ctp）に、Javascritおよび必要なタグを記載する。</li>
<li>Javascriptから呼ぶ、 アップロード処理をするphpプログラムを用意する。</li>
<li><del datetime="2010-04-06T10:38:58+00:00">アップロード完了後のスクリプトを用意する。</del></li>
<li>CakePHP のFromタグによるSubmitのPHPプログラムを用意する。</li>
</ol>
<p><span id="more-672"></span><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
(1) JQuery、Uploadifyのスクリプトをヘッダー内で定義する。<br />
(2) UploadfyのCSSをヘッダー内で定義す る。</p>
<p>・Uploadifyを使うときの専用layoutを用意しても良いでしょう。</p>
<div style="border:1px solid #999; background-color:#ddd;font-size:12px;padding:5px;margin:5px;">&lt;!DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.0 Strict//EN&#8221; &#8220;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&#8221;&gt;<br />
&lt;html xmlns=&#8221;http://www.w3.org/1999/xhtml&#8221;&gt;<br />
&lt;head&gt;<br />
&lt;meta http-equiv=&#8221;Content-Type&#8221; content=&#8221;text/html; charset=UTF-8&#8243;&gt;<br />
&lt;title&gt;&lt;? echo $title_for_layout; ?&gt;&lt;/title&gt;</p>
<p>&lt;!&#8211;JAVASCRIPT&#8211;&gt;<br />
&lt;script src=&#8221;&lt;?= $html-&gt;url(&#8216;/js/jquery-1.3.2.min.js&#8217;)?&gt;&#8221; type=&#8221;text/javascript&#8221;&gt;&lt;/script&gt;<br />
&lt;script src=&#8221;&lt;?= $html-&gt;url(&#8216;/js/jquery.uploadify.js&#8217;)?&gt;&#8221; type=&#8221;text/javascript&#8221;&gt;&lt;/script&gt;<br />
&lt;!&#8211;CSS&#8211;&gt;<br />
&lt;link rel=&#8221;stylesheet&#8221; href=&#8221;&lt;?= $html-&gt;url(&#8216;/css/uploadify.css&#8217;)?&gt;&#8221; type=&#8221;text/css&#8221; media=&#8221;screen&#8221;/&gt;</p></div>
<p>(3) ビュー（～.ctp）に、Javascritおよび必要なタグを記載する。</p>
<p>・Viewでは、controllerからデータを受けて、JavaScriptで参照することもできる。</p>
<div style="border:1px solid #999; background-color:#ddd;font-size:12px;padding:5px;margin:5px;">&lt;?php<br />
$maxSize = $this-&gt;data['max_size'];<br />
$maxAttachment = $this-&gt;data['Management']['max_attachment'];<br />
?&gt;<br />
&lt;script type=&#8221;text/javascript&#8221; charset=&#8221;utf-8&#8243;&gt; // &lt;![CDATA[</p>
<p>$(document).ready(function(){<br />
var maxsize = &lt;?= $maxSize?&gt;;<br />
var maxattachment = &lt;?= $maxAttachment?&gt;;</p>
<p>$('#uploadify').uploadify({<br />
'uploader': path + '/uploadify.swf',<br />
//'script': path +  '/uploadify.php',　<span style="color: #ff0000;"> // Uploadify付属のサーバー側PHPを使わない。</span><br />
'script': '/file_uploads/complete/' ,　<span style="color: #ff0000;">//</span><span style="color: #ff0000;"><span style="color: #ff0000;"> </span>controllerで関数を作成する。この内容は、次の(4)</span><br />
'folder': '/store/' + sdir,<br />
'cancelImg': path + '/cancel.png',<br />
'fileExt': "*.*",<br />
'fileDesc': "data",<br />
'multi': true,<br />
'queueID': 'fileQueue',<br />
'queueSizeLimit' : maxattachment,<br />
'sizeLimit': maxsize * 1024,<br />
・・・・</p>
<p>function kick(){<br />
if(window.confirm('この内容でよろしいですか。')) {<br />
$('#uploadify').uploadifyUpload();<br />
}<br />
}</p></div>
<p>・HTMLタグのFormおよび、送信あたりは、下記のようにする。</p>
<div style="border:1px solid #999; background-color:#ddd;font-size:12px;padding:5px;margin:5px;">&lt;?php echo $form-&gt;create('FileUpload', array(type'=&gt;'post', 'action'=&gt;'check')); ?&gt;<br />
・・・・<br />
&lt;div&gt;&lt;?php echo $form-&gt;button('　送信　', array('onClick'=&gt;"javascript:kick()", 'style'=&gt;'cursor:pointer;')); ?&gt;&lt;/div&gt;</div>
<p>(4) Javascriptから呼ぶ、 アップロード処理をするphpプログラムを用意する。</p>
<p>・Uploadifyに添付されていたＰＨＰコードをまねつつ、controllerにCakePHPコードを書く。<br />
・これで、$thisとか使える。モデルにもアクセスできるハズ。</p>
<div style="border:1px solid #999; background-color:#ddd;font-size:12px;padding:5px;margin:5px;">function complete($subDir = null, $sender_id = null) {</p>
<p>//レイアウトは使用しない。<br />
$this-&gt;layout = null;<br />
$this-&gt;autoLayout = false;</p>
<p>//先に、echo() で返す。これがないと、Ajaxが戻りを受け取れず固まる？<br />
echo "1";</p>
<p>//アップロード情報がないなら終了<br />
if (empty($_FILES)) {<br />
exit();<br />
}</p>
<p>/*--------------------------------------------------------------*/<br />
// アップロードしたファイルの生成。                                */<br />
/*--------------------------------------------------------------*/<br />
$rtnArray = $this-&gt;_tmpdir($subDir);　<span style="color: #ff0000;">// これは、自作関数・・・、app_controllerで定義してます。</span></p>
<p>$targetPath = $rtnArray['tmp'];<br />
$targetPath =  str_replace(&#8216;//&#8217;,'/&#8217;,$targetPath);</p>
<p>$targetFile =  $targetPath . $_FILES['Filedata']['name'];<br />
$tempFile = $_FILES['Filedata']['tmp_name'];</p>
<p>switch ($_FILES['Filedata']['error']) {<br />
case 0:<br />
$msg = &#8220;Success.&#8221;; // comment this out if you don&#8217;t want a message to appear on success.<br />
break;<br />
case 1:<br />
$msg = &#8220;The file(&#8221; . $_FILES['Filedata']['name'] . &#8220;) is bigger than this PHP installation allows&#8221;;<br />
break;<br />
case 2:<br />
$msg = &#8220;The file(&#8221; . $_FILES['Filedata']['name'] . &#8220;) is bigger than this form allows&#8221;;<br />
break;<br />
case 3:<br />
$msg = &#8220;Only part of The file(&#8221; . $_FILES['Filedata']['name'] . &#8220;) was uploaded&#8221;;<br />
break;<br />
case 4:<br />
$msg = &#8220;No file(&#8221; . $_FILES['Filedata']['name'] . &#8220;) was uploaded&#8221;;<br />
break;<br />
case 6:<br />
$msg = &#8220;Missing a temporary folder&#8221;;<br />
break;<br />
case 7:<br />
$msg = &#8220;Failed to write file(&#8221; . $_FILES['Filedata']['name'] . &#8220;) to disk&#8221;;<br />
break;<br />
case 8:<br />
$msg = &#8220;File upload stopped by extension&#8221;;<br />
break;<br />
default:<br />
$msg = &#8220;unknown error &#8221; . $_FILES['Filedata']['error'];<br />
break;</p>
<p>}<br />
if ($_FILES['Filedata']['error'] &gt; 0) {<br />
exit();<br />
}</p>
<p>/*&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;*/<br />
// アップロードしたファイルから生成。                                */<br />
/*&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;*/<br />
move_uploaded_file($tempFile, $targetFile);<br />
exit();<br />
}</p></div>
<p><del datetime="2010-04-06T10:38:58+00:00">(5) アップロード完了後のスクリプトを用意する。</del></p>
<p>(6) CakePHP のFromタグによるSubmitのPHPプログラムを用意する。</p>
<ul>
<li>$form-&gt;create(&#8216;FileUpload&#8217;, array(type&#8217;=&gt;&#8217;post&#8217;,  &#8216;action&#8217;=&gt;&#8217;check&#8217;)　のcontroller関数。</li>
<li>既に、(4)のcompleteは、終わっている。</li>
<li>フォームのその他、入力項目をデータベースに登録したりする。</li>
<li>アップロードのキャンセルをする場合は、既にアップロードされているサーバーのファイルを消す作業となる。</li>
</ul>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
以上です。</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/672.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>QdmailのFrom、Return-path</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/604.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/604.html#comments</comments>
		<pubDate>Wed, 10 Mar 2010 04:06:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[エクウィップメント]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=604</guid>
		<description><![CDATA[CakePHPにて、メール送信コンポーネント「Qdmail」を使わせて頂きました。 メールには、封筒に書く住所等の「エンベロープ」と便箋に書く「ヘッダー」があります。差出人も$Qdmail->from、$param['f [...]]]></description>
			<content:encoded><![CDATA[<p>CakePHPにて、メール送信コンポーネント「<a href="http://hal456.net/qdmail/" target="_blank">Qdmail</a>」を使わせて頂きました。</p>
<p>メールには、封筒に書く住所等の「エンベロープ」と便箋に書く「ヘッダー」があります。差出人も$Qdmail->from、$param['from']の２つがあり、下記のように設定されるので、思ったとおり動作するよう実際のメアドを設定する必要があります。<br />
<a href="http://mori.moripower.jp/wp-content/uploads/2010/03/m20100310-1.gif" rel="lightbox[604]"><img src="http://mori.moripower.jp/wp-content/uploads/2010/03/m20100310-1-300x290.gif" alt="m20100310-1" title="m20100310-1" width="300" height="290" class="size-medium wp-image-605" /></a><br />
・Return-pathは、メール送信時にエラーが発生した場合に、通知されるメアド。Return-pathは、メール転送中にMTAにより、エンベロープのFromで置き換えられる。<br />
・Reply-toは、メール受信者が返信をしたときに、表示されるメアド。</p>
<p>以上です。</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/604.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHP ページャ pagenate</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/507.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/507.html#comments</comments>
		<pubDate>Tue, 01 Dec 2009 16:17:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[エクウィップメント]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=507</guid>
		<description><![CDATA[CakePHPねたです。 &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212 [...]]]></description>
			<content:encoded><![CDATA[<p>CakePHPねたです。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
CakePHPのページング機能は、1.2から標準で入っているようで、特にコンポーネントを取り込む必要はないようです。これで、通常コントローラで使う分には問題ないです。</p>
<pre style="margin:5px 10px 0 10px; padding:5px; background-color:#ddeeee; font-size:11px;">//基本的なページングの条件
$this-&gt;paginate = array(
		'limit' =&gt; 25,
        	'order' =&gt; array('User.created' =&gt; 'desc'),
		'recursive' =&gt; 1,
  		);

// Userモデルの検索条件を設定する。$hogeは、事前に何か設定されていると仮定する。
$conditions = "User.name LIKE '%{$hoge}%'";

// $this-&gt;pageneteで、find検索とほぼ同じ。（ただし、設定された整列、条件で検索）
$this-&gt;data = $this-&gt;paginate('User', $conditions);</pre>
<p>で、ビューに下記のコードを書くと・・。</p>
<pre style="margin:5px 10px 0 10px; padding:5px; background-color:#ddeeee; font-size:11px;">&lt;?php echo $paginator-&gt;prev('« Previous ', null, null, array('class' =&gt; 'disabled')); ?&gt;
&lt;?php echo $paginator-&gt;numbers(); ?&gt;
&lt;?php echo $paginator-&gt;next(' Next »', null, null, array('class' =&gt; 'disabled')); ?&gt;</pre>
<p>こんな感じで表示されます。（それぞれ、リンクが張られます。）</p>
<pre style="margin:5px 10px 0 10px; padding:5px; background-color:#eeddee; font-size:11px;">« Previous
1 | 2 | 3
Next »</pre>
<p>で、２ページ目をクリックしたとき、URLは、こんな感じで飛んでいきます。</p>
<p>http://~~~.~~~~~.jp/users/view/page:2</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p style="font-size:14px; color:red;">しかし、絞込み条件を、Viewから得て$hogeに設定している場合は、問題が出てきます。</p>
<p>こんなふうに、条件をビューから得ると、２ページ目は絞込みがされないで、全件表示されます。prevも、nextも同じ症状となります。</p>
<pre style="margin:5px 10px 0 10px; padding:5px; background-color:#ddeeee; font-size:11px;">$hoge = $this-&gt;data['search'];</pre>
<p>何故かというと、ページャの【1 | 2 | 3】や【prev】、【next】は、単なるリンク(a href)でしかないからです。おそらくビューでは、$this-&gt;data['search'];をするために、form-&gt;createして、inputでコントローラに持ってきてますよね。そんで、送信とかボタン押すでしょ。</p>
<p>ページャで自動的に作られる【1 | 2 | 3】や【prev】、【next】は、単なるリンクなので、これをクリックしても、コントローラーでは、$this-&gt;dataは空です。（が～ん）</p>
<p>リンクにこんな感じで、&#8217;users/view/&#8217;. $condition 引数を設定しようとしても、ページャが自動的にリンク作るので、そんなことは、出来ません。（が～ん、が～ん）。<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
多分、ページャは、絞込み条件で与えられた件数を検索し、limitで割って計算して、page:2とかでその部分を持ってきているだけです。</p>
<pre style="margin:5px 10px 0 10px; padding:5px; background-color:#eeddee; font-size:11px;">|------------------------|------------------------|------------------------|
|         1ページ目      |       2ページ目        |       3ページ目        |
|------------------------|------------------------|------------------------|</pre>
<p>ですので、ページングするたびに、同じ絞込み条件を与えないと、見た目、変なページングになってしまします。<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="font-size:14px; color:red;">解決策は、条件をどこに保存しておくか？</span>です。<br />
◆解決案１：　データベースに保存しておく。</p>
<p style="margin:0 0 5px 10px">でも、複数の人が同時にブラウザ操作してたら・・・、工夫が必要ですよね。</p>
<p>◆解決案２：　セッションに保存しておく。</p>
<p style="margin:0 0 5px 10px">これが、一番、現実的な解決方法だと思われます。</p>
<p>下記の２つをうまく組み合わせて、絞込み条件を保存し、ページングするたびに読み出せば、うまくいくはずです。</p>
<pre style="margin:5px 10px 0 10px; padding:5px; background-color:#ddeeee; font-size:11px;">//セッションデータを読み出す。
if ($this-&gt;Session-&gt;check('pagecond')) {
    $this-&gt;data = $this-&gt;Session-&gt;read('pagecond');
}
//セッションデータを書き出す。
$this-&gt;Session-&gt;write('pagecond', $this-&gt;data);</pre>
<p>以上です。</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/507.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JQueryのUploadifyをCakePHPで使用する</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/435.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/435.html#comments</comments>
		<pubDate>Thu, 10 Sep 2009 10:11:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[エクウィップメント]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=435</guid>
		<description><![CDATA[AjaxアップローダーのUploadifyをCakePHPで使う方法について、ご紹介します。 基本的な流れ JQuery、Uploadifyのスクリプトをヘッダー内で定義する。 UploadfyのCSSをヘッダー内で定義 [...]]]></description>
			<content:encoded><![CDATA[<p>AjaxアップローダーのUploadifyをCakePHPで使う方法について、ご紹介します。</p>
<p>基本的な流れ</p>
<ol>
<li>JQuery、Uploadifyのスクリプトをヘッダー内で定義する。</li>
<li>UploadfyのCSSをヘッダー内で定義する。</li>
<li>ビュー（～.ctp）に、Javascritおよび必要なタグを記載する。</li>
<li>Javascriptから呼ぶ、アップロード処理をするphpプログラムを用意する。</li>
<li>アップロード完了後のスクリプトを用意する。</li>
<li>CakePHPのFromタグによるSubmitのPHPプログラムを用意する。</li>
</ol>
<p>それでは、具体的に説明します。</p>
<p>※この記事は、書くのを中断しています。後日、ＵＰ！</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/435.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHPコンポーネントからモデルにアクセスする</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/432.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/432.html#comments</comments>
		<pubDate>Fri, 28 Aug 2009 03:51:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=432</guid>
		<description><![CDATA[コンポーネントのメソッドの中で、下記のように記載する。 function hoge() { // モデル生成 $pepole = ClassRegistry::init('Pepole'); $data = $peple [...]]]></description>
			<content:encoded><![CDATA[<p>コンポーネントのメソッドの中で、下記のように記載する。</p>
<pre style="margin-left:20px; color:blue; font-size:12px;">
function hoge() {
     // モデル生成
     $pepole = ClassRegistry::init('Pepole');
     $data = $peple->find('first');
     ・
     ・
     ・
}
</pre>
<p>以上です。</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/432.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>webrootディレクトリ</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/426.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/426.html#comments</comments>
		<pubDate>Wed, 26 Aug 2009 06:19:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=426</guid>
		<description><![CDATA[webrootをCakePHPのシステムと分けて、通常のWWW_ROOTにおく場合、注意点 app ---app1 ------view ---------uploads WWW_ROOT ---app1 ------u [...]]]></description>
			<content:encoded><![CDATA[<p>webrootをCakePHPのシステムと分けて、通常のWWW_ROOTにおく場合、注意点</p>
<pre style="margin-left:20px; color:blue; font-size:12px;">
app
---app1
------view
---------uploads

WWW_ROOT
---app1
------uploads   700
</pre>
<p>・WWW_ROOTのuploadsを700とすると、VIEWのuploadsにもアクセスできなくなります。（当然か・・・）</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/426.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>さくらインターネットCakePHPでbake</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/408.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/408.html#comments</comments>
		<pubDate>Thu, 20 Aug 2009 15:53:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=408</guid>
		<description><![CDATA[(1) さくらインターネットに、TELNETでログイン (2) cakeコマンドを修正 %vi ~/○○○○○/cake/console/cake]]></description>
			<content:encoded><![CDATA[<p><strong>(1) さくらインターネットに、TELNETでログイン</strong></p>
<p><strong>(2) cakeコマンドを修正</strong></p>
<pre style="margin-left:20px; color:blue; font-size:12px; width:400px">%vi ~/○○○○○/cake/console/cake     <--  ○○○○○は、CakePHPを入れたフォルダ
#!/usr/local/bin/bash
</pre>
<p><strong>(3) cakeコマンド実行</strong></p>
<pre style="margin-left:20px; color:blue; font-size:12px; width:400px">%cd ~/○○○○○
% ./cake/console/cake

Current Paths:
-app: app
-working: /home/×××××/○○○○○/app
-root: /home/×××××/○○○○○
-core: /home/×××××/○○○○○

Changing Paths:
your working path should be the same as your application path
to change your path use the '-app' param.
Example: -app relative/path/to/myapp or -app /absolute/path/to/myapp

Available Shells:

APP/vendors/shells:
- none

ROOT/vendors/shells:
- none

CORE/console/libs:
acl
api
bake
console
i18n
schema
testsuite

To run a command, type 'cake shell_name [args]'
To get help on a specific command, type 'cake shell_name help'
%</pre>
<p><strong>(4) 簡単にcakeコマンドが打てるようにPathを通す。</strong></p>
<pre style="margin-left:20px; color:blue; font-size:12px; width:400px">% vi .cshrc
$HOME/○○○○○/cake/console      <--  Pathに追加、○○○○○は、CakePHPを入れたフォルダ
</pre>
<p>※さくらの場合、下記をチェックする。<br />
・cakeが、実行可能になっているか。<br />
・cakeシェルの先頭が、#!/usr/local/bin/bashであるか。</p>
<p><strong>(5) アプリの入っているフォルダへカレントを移動し、bakeする。</strong></p>
<pre style="margin-left:20px; color:blue; font-size:12px; width:400px">% cd ~/apps/app1
% cake bake

Welcome to CakePHP v1.2.4.8284 Console
---------------------------------------------------------------
App : app1
Path: /home/×××××/apps/app1
---------------------------------------------------------------
Interactive Bake Shell
---------------------------------------------------------------
[D]atabase Configuration
[M]odel
[V]iew
[C]ontroller
[P]roject
[Q]uit
What would you like to Bake? (D/M/V/C/P/Q)
>
</pre>
<p>以上です。</p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/408.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP基礎</title>
		<link>http://mori.moripower.jp/eqwip/cakephp/400.html</link>
		<comments>http://mori.moripower.jp/eqwip/cakephp/400.html#comments</comments>
		<pubDate>Sat, 01 Aug 2009 02:22:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[エクウィップメント]]></category>

		<guid isPermaLink="false">http://mori.moripower.jp/?p=400</guid>
		<description><![CDATA[CakePHPするにもPHP基礎を知っていた方が良い。 分かりやすいPHPを学ぶサイト。　ＰＨＰ入門サイト]]></description>
			<content:encoded><![CDATA[<p>CakePHPするにもPHP基礎を知っていた方が良い。<br />
分かりやすいPHPを学ぶサイト。　<a href="http://php.xenophy.com/index.html">ＰＨＰ入門サイト</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mori.moripower.jp/eqwip/cakephp/400.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

