KUNISAN.JPブログコメント書き込み※書き込み欄はページ下にあります。 PHP簡易おみくじメール送信プログラム名前: 小川 邦久 リンク: http://kunisan.jp/ 日付: 2007年10月25日
PHPミニプログラム第5弾は、「簡易おみくじメール送信プログラム」です。あなたのメールボックスに、おみくじを届けます。
今回は「空ファイルの作成」、「ファイルの作成日時チェック」、「古いファイルの削除」、「ディレクトリ内のファイル検索」などを習得する目的で作りました。当初メールを送る関数"mb_send_mail"が、文字化けが発生してうまく使えなかったのですが、エンコード設定を正しくやることで解決しました。 ■簡易おみくじメール送信プログラム■ <?php //おみくじの種類 $omik = array('大吉','中吉','小吉','吉','凶','大凶'); //乱数ジェネレーターの初期化 srand(microtime()*1000000); //乱数の発生(10000~99999); $rd = rand (10000,99999); //空ファイル(キーファイル)の作成 touch( $rd.".omikuji"); //タイトル画像ファイルの読み込み $titl = imagecreatefromjpeg("jinja.jpg"); //キーの色 $fontcol = imagecolorallocate($titl,0,0,0); //タイトル画像にキーを書き込み imagestring ($titl,5,rand(125,170),rand(180,200),$rd,$fontcol); //タイトル画像のファイル作成 imagejpeg($titl,"jinja01.jpg"); //タイトル画像表示 print '<img src="jinja01.jpg"><br>'; //今現在のタイムスタンプを取得 $timnow = time(); //ディレクトリハンドルをオープン $res_dir = opendir( '.' ); //ディレクトリ内のファイル名を1つずつを取得 while( $file_name = readdir( $res_dir ) ){ //omikujiの拡張子の名が入ったファイル名のみを表示 if (eregi(".omikuji",$file_name)){ //該当キーファイルの作成日時の取得(現在時間-該当ファイル作成日時) $stam = filectime($file_name); //作成から3600秒以上経過したキーファイルは削除 if (($timnow - $stam) > 3600){ unlink($file_name); } } } //ディレクトリ・ハンドルをクローズ closedir( $res_dir ); //ファイルの存在の有無チェック if ($_GET[KEY]!="") { if (file_exists($_GET[KEY].'.omikuji')) { //該当キーファイルの削除 unlink($_GET[KEY].'.omikuji'); //おみくじ選択 $rd2 = rand (0,5); $comment = $omik[$rd2]; //エンコード設定 mb_language("ja"); mb_internal_encoding("SJIS"); //メール送信 mb_send_mail($_GET[ADDRESS],'PHP簡易おみくじメール送信プログラム','あなたの今日の運勢は'.$comment.'です。','From:web_server@kunisan.jp'); print '<font color="red">おみくじメールが送信されました。</FONT><br>'; } else { //正しくないキー入力 print '<font color="red">正しいキーが入力されていません。</font><br>'; } } //HTMLフォーム print ' <form action="'.$_SERVER[PHP_SELF].'" method="get"> 上に表示されている5桁の数字を 入れてください(半角数字)。<br> <input size="12" type="text" name="KEY"><br> メールアドレスを入れてください。<br> <input size="24" type="mail" name="ADDRESS"><br> <input type="submit" name="SUBMIT" value="送信"><br> </form> ' ?> ■■■■■■■■■■■■■■■ いつも通りですが、暇な方は遊んでみてください。 PHP関連記事(リンク一覧): さくらレンタルサーバーのアクセス履歴をPHPで表示 / PHPで画像のアップロード(さくらレンタルサーバーのPHPでImageMagick) / PHP REVERSI(オセロもどき)の続き / PHP REVERSI(リバーシ) - オセロもどきゲームの公開 / PHP版-簡易アクセスブロック(IPアドレス、ホスト名、OS、ブラウザ名で制御) / ...(記事連続表示) ※HTMLタグ入力は出来ませんのでご了承ください。
|