メイン

PHP アーカイブ

2006年12月05日

PEAR::Mail

PEARを利用したメール送信。メモ。

コチラを参考にした。


○Package Information: Mail_Mime - 日本語化
Package Information: Mail_Mime

PHPでメール

前回はPearを利用しましたが、利用しない方法。

こちらを利用しました。

ソースだけ書くと。

mailsample.php
--------------------------------------------------
require("mail.php");

$MailFrom = "hogehoge@○○.jp";
$MailTo = "hoge@○○.jp";
$Subject = "メール送信テスト";
$Message = <<< __EOF__
メール送信テスト
(サンプル)
ヒアドキュメントで生成する場合は、このようになります。
__EOF__;

$Kekka = MailSender($MailFrom, $MailTo, $Subject, $Message);
?>
--------------------------------------------------

mail.php
--------------------------------------------------
function MailSender($MailFrom, $MailTo, $Subject, $Message)
{
$xSubject = mb_convert_encoding($Subject, "JIS", "auto");
$xSubject = base64_encode($xSubject);
$xSubject = "=?iso-2022-jp?B?".$xSubject."?=";

$xMessage = htmlspecialchars($Message);
$xMessage = str_replace("&", "&", $xMessage);
if (get_magic_quotes_gpc()) $xMessage = stripslashes($xMessage);
$xMessage = str_replace("\r\n", "\r", $xMessage);
$xMessage = str_replace("\r", "\n", $xMessage);
$xMessage = mb_convert_encoding($xMessage, "JIS", "auto");

$GMT = date("Z");
$GMT_ABS = abs($GMT);
$GMT_HOUR = floor($GMT_ABS / 3600);
$GMT_MIN = floor(($GMT_ABS - $GMT_HOUR * 3600) / 60);
if ($GMT >= 0) $GMT_FLG = "+"; else $GMT_FLG = "-";
$GMT_RFC = date("D, d M Y H:i:s ").sprintf($GMT_FLG."%02d%02d", $GMT_HOUR, $GMT_MIN);

$Headers = "Date: ".$GMT_RFC."\n";
$Headers .= "From: $MailFrom\n";
$Headers .= "Subject: $xSubject\n";
$Headers .= "MIME-Version: 1.0\n";
$Headers .= "X-Mailer: PHP/".phpversion()."\n";
$Headers .= "Content-type: text/plain; charset=ISO-2022-JP\n";
$Headers .= "Content-Transfer-Encoding: 7bit";

if(mail($MailTo, $xSubject, $xMessage, $Headers)) return true;
return false;
}
?>
--------------------------------------------------

※mail関数、mbstring関連関数を使用できない場合は動作しません。

2007年01月16日

PHPでCSSを生成することによるテクニックが紹介されています

この考え方は良いなー。

[ PHPでCSSを生成することで、動的なCSSを作ることが可能にする ]
ってことですね。

http://www.phppro.jp/news/277

2007年01月29日

ADOdbメモ

http://634.ayumu-baby.com/adodb/index.html
http://www.souken.co.jp/tech/php/adodb/docs-adodb-ja.htm

2007年01月30日

Smarty マニュアル

本日、PHPフレームワークmojavi で、テンプレート Smarty を利用したのでメモ。

○Smarty2.6.7 マニュアル
http://sky.freespace.jp/smarty/SmartyManual_2-6-7J_html/

例:
http://sky.freespace.jp/smarty/SmartyManual_2-6-2J_html/language.modifier.truncate.html

{{{
index.php:

$smarty = new Smarty;
$smarty->assign('articleTitle', 'Two Sisters Reunite after Eighteen Years at Checkout Counter.');
$smarty->display('index.tpl');

index.tpl:

{$articleTitle|truncate:30:"...":true}

出力:

Two Sisters Reunite after E...
}}}

2007年02月07日

PHP Log 設定

PHP のログの出力設定。

http://wiz.syscon.co.jp/Lnxphp.html

たとえば
--------------------------------------------------

error_reporting = E_ALL & ~E_NOTICE
log_errors = On

error_log = /var/log/php


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

2007年02月08日

Mojavi SEO対策

へー。以下コピー。


--------------------------------
Mojavi SEO対策
テーマ:PHP
Mojaviはフロントコントローラで動くフレームワークのため、ページごとの制御は引数で行っています。

こんな感じ ↓
http://xxxxx.co.jp/index.php?module=Defult&action=Index

そのため、各ページを検索エンジンに拾ってもらうためにちょっとした工夫が必要になります。

まずは、Mojaviのconfig.phpファイルの↓の部分を1から2に変更。

define('URL_FORMAT',1); => define('URL_FORMAT',2);

こうすることで、引数がPATHフォーマットでもMojaviが認識するようになります。

こんな感じ ↓ でも上のURLと同じ動き
http://xxxxx.co.jp/index.php/module/Default/action/Index/

そしてさらに、Mojaviのindex.phpを配置しているディレクトリに、以下の記述をした.htaccessを配置します。


ForceType application/x-httpd-php

最後に、index.phpをコピーして、index にすれば、出来上がり。

するとこんな感じのURL ↓ でアクセスできます。
http://xxxxx.co.jp/index/module/Default/action/Index/

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


http://ameblo.jp/y-munakata/entry-10021894355.html

2007年02月13日

HTMLをPDFなどに変換するサービスをPHPから使い易くしたライブラリ

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


require_once 'Services/HTML2PDF.php';
$pdf = Services_HTML2PDF::convert("http://labs.cybozu.co.jp/", 'PDF');
if (PEAR::isError($pdf)) {
print($pdf->getMessage() . "\n");
exit();
}
file_put_contents(dirname(__FILE__) . '/hoge.pdf' , $pdf);

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

http://labs.cybozu.co.jp/blog/tsuruoka/anubis/blog_show/34

2007年02月26日

Maximum execution time of 30 seconds exceededの対応方法

set_time_limit(60);

↑これで60秒になる。

>スクリプトが実行可能な秒数を設定します。 この制限にかかるとスクリプトは致命的エラーを返します。 デフォルトの制限値は 30 秒です。 なお、php.iniでmax_execution_timeの 値が定義されている場合にはそれを用います。 secondsにゼロをセットした場合、時間制限は行われません。

max_execution_time = 60

http://php.s3.to/man/function.set-time-limit.html
http://oshiete1.goo.ne.jp/kotaeru.php3?q=2034385

2007年02月28日

PHPをコマンドラインから使用する(Windows)

○「C:\php」PHPをインストールした場合。

1.環境変数( Path )の設定
C:\php\cli

2.コマンドラインで利用できるか、コマンドプロンプトで[ php -v ]と入力して確認する
-------------------------------------------------------
C:\>php -v
PHP 4.4.0 (cli) (built: Jul 11 2005 16:13:16)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
-------------------------------------------------------

http://search.net-newbie.com/php/features.commandline.html

PHP5で書かれたWeb2.0風プロジェクト管理ツール:activeCollab

ちょっと使ってみよう。

http://phpspot.org/blog/archives/2006/07/php5web20active.html
http://www.activecollab.com/screencast/alpha/index.html
http://dragon.jp/column/archives/morifuji_060720.html

○activeCollab
http://www.activecollab.com/

2007年03月01日

PHPテスト駆動開発

afeafeafafjaifjjijoajiofjao.gif

3319/3319 test cases complete: 7291 passes, 0 fails and 0 exceptions.


1つの応募フォームで テストの数 7291・・・テスト過多かな・・・?

classひとつひとつの結果表示と、ALL Testsを両方、htmlで表示すると、
テスト実行し終わるのに3時間かかる・・・。

2007年03月08日

3月は「PHPバグ月間」,元開発者がバグを毎日公開へ

http://itpro.nikkeibp.co.jp/article/NEWS/20070301/263695/?ST=lin-server
http://blog.php-security.org/archives/71-Month-of-PHP-Bugs-and-PHP-5.2.1.html
http://www.suraski.net/blog/index.php?/archives/17-PHP-Security.html

○日本語訳
http://blog.ohgaki.net/index.php/yohgaki?cat=41

バグは限りないのぉ....。。。

2007年03月14日

【PHPウォッチ】第33回 “PHP版Ruby on Rails”symfonyフレームワーク1.0正式リリース!

へー。あとで使ってみようかな....。

http://itpro.nikkeibp.co.jp/article/COLUMN/20070311/264502/http://itpro.nikkeibp.co.jp/article/COLUMN/20070311/264502/

カレンダー


2007年05月
Su Mo Tu We Th Fr Sa
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Map

About PHP

ブログ「プログラマ 福重 伸太朗 ~基本へ帰ろう~」のカテゴリ「PHP」に投稿されたすべてのエントリーのアーカイブのページです。過去のものから新しいものへ順番に並んでいます。

前のカテゴリはLinuxです。

次のカテゴリはcssです。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。