Home > PHP
PHP Archive
【OpenPNEの小窓】Twitter小窓を作ってみた。
【OpenPNEの小窓】Twitter小窓を作ってみた。
まぁデザインはさておき、まだまだやることがあるけどとりあえず公開。
文字数とかきにしてない。。。まずいな。
かん吉のソースを改造しました。
ソース公開できるようになったら公開します。
- Comments (Close): 0
- Trackbacks (Close): 0
さくらインターネットのサーバとCakePHPでcronを使う方法をすこし変えてみた。
さくらインターネットのサーバとCakePHPでcronを使う方法の修正版です。
よくきたはてダさんに指摘をもらった。
確かにそうだな。。。ということでちゃんと書く。(まだ微妙かもしれんが)
* cronで実行するPHPスクリプトの作成
* 該当スクリプトのテスト
* コンパネでcronの設定
* 正常動作の確認
cronで実行するPHPスクリプトの作成
まず、cronで実行させたいPHPのスクリプトを作ります。
今回は、users_controller.phpにmail関数を作り、メールを送信します。
次に、app/webroot/files以下に、cron.phpというファイルを作ります。
該当スクリプトのテスト
次にさっきつくったPHPスクリプトが正常に動作するか確認してみます。
以下のURLにアクセスしてみて動いたらとりあえずOK。
http://hogehoge.com/files/cron.php
コンパネでcronの設定
さくらのコントロールパネルでcronの設定をします。
/usr/local/bin/php /home/(ユーザ名)/www/cakephp/app/webroot/files/cron.php
正常動作の確認
これで、定期的にhttp://hoge.com/users/mailが実行されるようになる。
とまぁ書き直してみたものの、このスクリプトをWEBからアクセスできるのはだめな書き方だからcomponentsとかにスクリプト書いてそれをcronで実行する形がいいのかな。ってかmailっていう例が良くなかったかもな。
ちなみに、さくらだと
OS FreeBSD 6.1-RELEASE-p10 i386
なので、fetchとかwgetってのが使えるらしい。
ってことを目的としては行いたいみたいなんだけど,さくらだとFreedBSDかな.fetch(あるいは入って入ればwget)をcronで使えばいいんじゃないのかな.
とりあえず、fetchとかwgetがよく分からんので調べる。
一番分かりやすい説明がここだった。
XREA & CORESERVER の cron と WordPress の wp-cron
XREAでの説明だけど、wgetの意味が分かった。
elfさんに指摘をもらうなんてWEBってすげーと思いつつ、自分が書くものには責任が持てる記事じゃないとなーとか反省。
どっちにしてもcronが良くわからないから勉強しなきゃな。
- Comments: 124
- Trackbacks: 96
さくらインターネットのサーバとCakePHPでcronを使う方法
さくらインターネットのサーバとCakePHPでcronを使う方法
まず、さくらでcronの設定をします。
実行するコマンドに
/usr/local/bin/php /home/(ユーザ名)/www/cakephp/app/webroot/files/cron.php
とします。
次にCakePHPの設定。
app/webroot/files以下に、cron.phpというファイルを作ります。
これで、users_controller.phpにmail関数を作る。
-
-
hogehoge
-
-
}
これで、定期的にhttp://hoge.com/users/mailが実行されるようになる。
参考サイト
アルファブレンド・プログラミングチップス
CakePHP cronを利用する
さくらインターネットでのcronの設定
- Comments: 127
- Trackbacks: 90
CakePHP1.2系のインストール
CakePHP1.2系のインストールをしていたら、エラーがでました。
はて、1.1系はでなかったぞ。と思い調べて見る。

CakePHP- the rapid development php framework- Home-2008-02-11 -15-55-14 posted by (C)いもけん
調べて見ると、
-
/**
-
* A random string used in security hashing methods.
-
*/
-
Configure::write('Security.salt', 'D1hG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi');
このハッシュを変更してくてはいけないらしい。

CakePHP- the rapid development php framework- Home-2008-02-11 -15-59-28 posted by (C)いもけん
このように黄色の文字はなくなりました。
で、みどりのとこはなんて書いてあるのかというと、
Your tmp directory is writable.
The FileEngine is being used for caching. To change the config edit APP/config/core.php
Your database configuration file is present.
Cake is able to connect to the database.
なので大丈夫みたいだな。
- Comments: 120
- Trackbacks: 95
さくらのレンタルサーバが1月29日より PHP5 を正式に提供!!!
- 2008-01-24 (木)
- PHP
こんなメールが来ました。
ついにさくらでPHP5正式提供らしいですよー!
ちなみにバージョンの指定は出来るみたいなので、PHP4から変えたくない人は変えなくていいみたいですよー。
以下メール文転記。
お客様各位
[「さくらのレンタルサーバ」スタンダード・プレミアム PHP5 の提供]
さくらインターネット株式会社
平素はさくらインターネットをご利用いただき、誠にありがとうございます。
「さくらのレンタルサーバ」スタンダード・プレミアムサービスにおきまして
2008年1月29日より PHP5 を正式に提供します。※ 一部サーバにおいてはテスト運用として試験的に導入済みです。
また、PHP5 提供、及び PHP4 バージョンアップに伴い以下のメンテナンスを
実施します。ご迷惑をお掛けしますが、ご協力よろしくお願いします。=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[メンテナンス]
提供範囲: 「さくらのレンタルサーバ」スタンダード・プレミアム
※ ライトプランはPHPを提供しておりません。作業日程: 2007年1月29日(火)
作業内容: ・PHP5を提供します。
(コントロールパネル上の「PHPのバージョン選択」で
バージョン指定することによりPHP5がご利用できます)・現行の PHP4.4.7 は PHP4.4.8 へバージョンアップします。
▼ PHP 4 ChangeLog
http://www.php.net/ChangeLog-4.php#4.4.8■ PHP4 から PHP5 へのバージョン選択時の注意事項
PHP5バージョンアップにより、一部のスクリプトの動作が変更に
なる場合がございます。その際は、PHPプログラムの配布元及び
プログラムの内容やPHP5での動作状況をご確認くださいますよう
お願いします。▼ PHP 公式サイトの修正点の掲載
http://jp.php.net/manual/ja/migration5.php
http://www.php.net/ChangeLog-5.php■ PHP4 の今後について
2007年末をもってPHP開発元によるPHP4のサポートは終了しました。
2008年8月8日以降は重要なセキュリティフィックスも含め終了されます。http://www.php.net/index.php#2007-07-13-1
「さくらのレンタルサーバ」では2008年6月頃を目途に[標準のPHP]に
おいてもPHP4からPHP5へ全て切り替えを予定してます。
お早めにPHP5へ移行されることをお勧めします。※ 2008年1月14日以降に新規にご用意したサーバ(www1410 以降)に
ついては[標準のPHP]をPHP5で提供しています。=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
この件については、当メールへの返信にてお問い合わせください。
今後ともさくらインターネットをよろしくお願いいたします。
─── さくらインターネット株式会社 ─────────────────
■カスタマーセンター (ご利用サービスについてのお問い合わせ窓口)
URL : http://support.sakura.ad.jp/
TEL : 0120-775664 (通話料無料) 平日 10:00 - 18:00■FAQ(よくある質問)から調べる
URL : http://faq.sakura.ad.jp/────────────────────────────────────
- Comments: 0
- Trackbacks: 0
phpinfoで簡単にデバッグする方法
phpinfoで簡単にデバッグする方法
アクセスがあったときにphpinfoで「どういう値が飛んできているのか。」とか「アクセスあったの?」などを調べる方法の紹介。
-
<?php
-
$message = $out1;
-
?>
簡単に説明すると、
// ファイルを開く
$fp = fopen($fileday . '.html', 'a+');
// ファイルに書込む
fwrite($fp, $message);
// ファイルを閉じる
fclose($fp);
こんな感じ。
ちなみに、$out1ってのの中の値を見たかった場合、var_dumpを使うといいでしょう。
phpinfo(32);
環境変数・GET・POST・クッキー・サーバ変数から すべての 定義済みの変数を表示してくれます。
これをphpinfo();とすると、サーバすべての情報ですが、今回は必要な情報だけということで、phpinfo(32);にしています。
これを使うと、アクセスがあった場合にYmdhis.htmlというファイルが生成されて、そこに、id=testっていう値がGETで飛んできましたよーとか情報が書いてます。
- Comments: 0
- Trackbacks: 98
apacheのvhosts(httpd-vhosts.conf)を使ってcakephpというドメインを使う方法
apacheのvhostsを使ってcakephpというサブドメインを使う方法
1.まず、「C:\Program Files\xampp\apache\conf\extra\httpd-vhosts.conf」をテキストエディタで開く。
そして、最後の行に、これを追加するだけ!
NameVirtualHost *:80
DocumentRoot "C:\Program Files\xampp\htdocs"
ServerName localhost
DocumentRoot "D:\cakephp"
ServerName cakephp
Order allow,deny
Allow from all
DocumentRootは作業ディレクトリ
ServerNameは自分が作りたいドメイン
2.「C:\WINDOWS\system32\drivers\etc\hosts」をひらく。
127.0.0.1 localhostの下に、
「127.0.0.1 cakephp」
を追加する。
すると、アクセスできるようになってるよ。
つまったところをピックアップ。
・localhostは入れること!!
・下の二行は入れること!
Order allow,deny
Allow from all
・apacheは再起動すること!!
- Comments: 9
- Trackbacks: 19007
CakePHPガイドブック買ったよ!!
- 2007-10-25 (木)
- CakePHP
CakePHPガイドブック買ったよ!!
まだ最初の方しか読んでないけど、初心者であるおれが行き詰った箇所が多々説明されていてCakePHPを触ったことない人には絶対おすすめしたい本かな!
しかも、結構触ってる自分でも「あ~なるほど」と思える部分が解説されていて、既存のユーザにもすごくおすすめの本ですね!
著者の方々に感謝 :-)
そういえば、CakePHP のおいしい食べ方であったんだけど、1.2 pre-bet、1.1.18がついにきたそうな。
- Comments: 1
- Trackbacks: 85
【CakePHP】コントローラ側でのバリデーション ファイルアップロード時のinvalidateの使い方
CakePHPの優れたバリデーションを紹介。
今回はコントローラ側での処理を考える。
モデル側でやれよとか言われそうだが。。。
コントローラ側
if(file_exists($this->data['User']['pic']['tmp_name'])){ //ファイルの存在を確認 tempの状態で確認
$filesize = filesize($this->data['User']['pic']['tmp_name']);//ファイルサイズを取得 tempの状態で取得
if($filesize < = 100000){ //100000byte以下しか受け付けない
if(ereg("(^[a-zA-Z0-9_-]+)\.(jpg)|(^[a-zA-Z0-9_-]+)\.(gif)",$filename)){ //jpgかgifしかアップできない
move_uploaded_file($this->data['User']['pic']['tmp_name'], $updir.DS.$filename); //ファイルをuploadフォルダに保存
} else {
$this->User->invalidate('error1'); // tagErrorMsg('User/error1') 拡張子チェック
}
} else {
$this->User->invalidate('error2'); // tagErrorMsg('User/error2') ファイルサイズが大きすぎ
}
}
ポイント
$this->User->invalidate('error1');
このerror1というのがビューでのエラーメッセージ表示と繋がる。
ビュー側
< ?php echo $html->file('User/pic');?>
< ?php echo $html->tagErrorMsg('User/error1', 'jpg かgif のファイルしかアップできません。或いはハイフン以外の記号があります。');?>
< ?php echo $html->tagErrorMsg('User/error2', 'ファイルサイズが大きすぎます。
100000 Byte 以下にしてください。');?>
これで、それぞれ指定したエラーメッセージをコントローラ側で処理できる。
ちなみにマニュアルにもちょこちょこ書いているので参考までに。
validateErrors();
;保存に失敗時に、エラーの数を返します。
validate();
;モデルのバリデーションルールに基づいて、モデルのデータを検証します。バリデーションについては、 "データバリデーション"の章を参照してください。
http://cakephp.jp/doc/ch07s02.html
http://cakephp.jp/doc/validation.html
- Comments: 1657
- Trackbacks: 90
ホーム > PHP
