2011 8月 ITかあさん

ITかあさん

phpPgAdminのインストールメモ

phpMyadminはず~~っと使っていましたが、PostgreSQLはごぶさただったもので、
今回初めてphpPgAdminをインストールしたので、メモとして残します。

phpPgAdminをダウンロード


phpPgAdminをダウンロード
PHP5系ならphpPgAdmin-5.0を選択。


今回はphpPgAdmin-5.0.2.zipをダウンロード。

ファイルを解凍する

phpPgAdmin configを変更する

$conf[‘servers’][0][‘host’] = ‘localhost’;//ホストの設定
$conf[‘extra_login_security’] = false;//postgresユーザでのログインを許可
$conf[‘owned_only’] = true;//ログインユーザの所有データベース以外は表示しない

後は丸ごと閲覧可能ディレクトリにアップロードして終了。

(コマンドからやった方が早いっていうツッコミは無しでお願いします。)

iTunes 無料のアプリダウンロードで数万円の請求

今日、iTunesから不正利用として、カード会社から連絡があった

休日の昼さがりに突如電話がなった。クレジットカード会社のセキュリティ窓口とのこと。

『iTunesから数回に渡って 8000円ほどの利用が複数回にわたってありましたので確認のお電話をしております』
『????』
しばし混乱が続く。

無料アプリを入れた

昨夜、子供がかわいい犬のアイコンのアプリをダウンロードしたがった。
見ると『無料』
となっているし、かわいくて、クオリティも高そうなので『いいよ』
と言ってダウンロードしてあげた。

するとなかなかダウンロードが開始されない。

おかしいな~と思ってしばらく放置していたらダウンロード完了したが使い方が全く分からなくて放置しておいた。

次の日そこから8000円ほどの請求が来た

次の日、無料のはずのアプリが、iTunesより8400円の請求が来た!

っつ~か、8400円のアプリってなんだよ!!

そして、


なんでさっきと値段変わってんだよ!!

無料のアプリをダウンロードして、数回に渡って請求

同じ名前のアプリから、数回に渡って請求が来た・・・・

でも、アプリのレビューを見る限り、普通のレビューが多いので、
これはアプリ単体の問題ではないかもしれません。

自動でカードが止まる

カードのセキュリティが自動で発動し、5回目以降は請求がストップしているとの旨、クレジットカード会社から連絡があり、すぐに再発行の手続きを取りました。

不正利用とのことで、今回請求については全て保留になり、
不正分は請求はなくなり、一安心。

iTunesのパスワードを変更しました

アプリから今回のケースに発展したので、対象のアプリは削除後、
iTunesのパスワードを変更しました。

特定のあるアプリをダウンロードして、今回の問題に発展しましたので、今回はそのアプリ名については報告しませんが、問題が明確になりましたら、報告致します。

まとめ

みなさんもクレジットカードの扱いにはくれぐれも気をつけて。iTunesは一定の審査を踏んでいるものの、無料のアプリをダウンロードしたことで、このような不正利用がありました。無料だからと言って何でもダウンロードするのは絶対に止めましょうね。

PHP 連想配列にKeyを追加

連想配列にkeyを追加

こういう連想配列があったとして

Array
(
    [0] => Array
        (
            [User] => Array
                (
                    [id] => 1
                    [name] => 太郎
                )

            [Login] => Array
                (
                    [id] => 1
                    [login] => xxx
		    [password] => password
                )

        )

    [1] => Array
        (
            [User] => Array
                (
                    [id] => 2
                    [name] => 良夫
                )

            [Login] => Array
                (
                    [id] => 2
                    [login] => vvv
		    [password] => password
                )

        )

    [2] => Array
        (
            [User] => Array
                (
                    [id] => 3
                    [name] => 恵太
                )

            [Login] => Array
                (
                    [id] => 3
                    [login] => yyy
                    [password] => password
                )

        )

[3]は夫の名前です。(どうでもいい)
[User] に対して何か[kana]というkeyを追加したいとする。

array_pushを使ってもいけるんですが、

$hoge[0]['User']['kana'] = 'タロウ';
$hoge[1]['User']['kana'] = 'ヨシオ';
$hoge[2]['User']['kana'] = 'ケイタ';

foreachを使って動的にkeyを追加する

foreach($hoge as $key =>$hogehoge){
$hoge[$key]['User']['kana'] = 'カナ';
}

これがどう~~しても分からなくて何時間も悩んだのですが、$hogehogeには代入せずに$hogeに代入すればいいってことで。
要は$hogehogeは●●回目のループのデータが入っているわけで、全てのループに対しては$hoge。
メモメモ。

cakephpでブックマークアプリを作る 最終回!

はい、正真正銘、今回で最終回を迎えます、Cakephpでブックマークアプリを作る。
今後もちょこちょこCakephp雑記帳の中に入れていくこともありますが、このカテゴリーでの更新は終了します。

今まで熱心に読んでくださったみなさん、ありがとうございました。この記事の下の方にここまで作ったプログラムをまとめて公開しております。
責任は負いませんが、よろしければぜひご利用下さい。

エラーページを変更する

存在しないページにアクセスするとページがありませんってあれです。

私の今回このブログために設置したCakephpのURLは

http://sp.websta.info/posts
http://sp.websta.info/

前回の記事でURL叩いたときの表示も変更しましたが(ドキュメントルート)

さて、存在しないURLをたたくとどうなるでしょうか

http://sp.websta.info/test

(URLは自分の設置したURLと置き換えてください)

testっていう名前のコントローラーが存在しません、というおなじみの緑と黄色のエラーページが表示されます。

エラーページのデフォルトを変更する

エラーページを管理するデフォルトレイアウト

/cake/libs/view/errors

このディレクトリを見てください。
ここには様々なエラーページをあらかじめ作っておいてくれています。
特に解説しなくても、このディレクトリ内のファイル名を見れば、それぞれ何をしているのかは分かると思います。

今回は

http://sp.websta.info/test

testというコントローラーがない、というエラーですから
missing_controller.ctp
を変更すればいいわけです。

missing_controller.ctp をコピーして変更変更

先ほどの

/cake/libs/view/errors

のエラーのうち、missing_controller.ctpをコピーして、変更します。
そして、

app/views/errors/

このディレクトリに
移動します。

私はmissing_controller.ctpに、testとだけ書いてアップしました。すると

エラーの表示は消えて、緑地に

missing_controller.ctp

に書いた内容が表示されています。

Cakephpのデフォルト画面を変更する

エラーページの際、Cakephpの緑のデフォルト画面が出るのはやっぱり恥ずかしいです。
Cakephpのデフォルトを管理しているのが、

/cake/libs/view/layouts/default.ctp

なので、こいつをコピーして、

/app/views/layouts/default.ctp

こちらに設置。そしてカスタマイズしてあげます。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<?php echo $this->Html->charset(); ?>
<title>
<?php echo $title_for_layout; ?>
</title>
<?php
echo $scripts_for_layout;
?>
</head>
<body>
<div id="container">
<div id="content">

<?php echo $this->Session->flash(); ?>

<?php echo $content_for_layout; ?>

</div>
<div id="footer">
</div>
</div>
</body>
</html>


とてもあっさりしたデフォルトページの完成です★

おさらい

Cakephpエラー画面の変更

/cake/libs/view/errors
このディレクトリにそれぞれにエラーページがある。それを

app/views/errors/

に移動して変更。

Cakephpのデフォルト画面の変更

/cake/libs/view/layouts/default.ctpがデフォルトページ。
これを
/app/views/layouts/default.ctp
にコピーして好きなように編集。

ダウンロードはこちら

http://sp.websta.info 今回設置したCakephp ダウンロード

http://sp.websta.infoこのページはいずれ、スマートフォンサイトのデザイン集にしようと思っているので、そのうち違う見た目になってしまいます。
このCakephp入門コーナーで作った内容をそっくりそのまま見たい場合はこちらをダウンロードしてください。
再利用してかまいませんが、テンプレートに関しては私の著作物ではないので注意してください。

マスター管理ダウンロード

あと、本来Cakephpは複数アプリケーションを1つのCakephpの中で動かすことが出来ます。
入門ということもあり、この程度で2つのCakephpを設置するという荒業に出ました。
なお、マスター管理画面の設置は、http://sp.websta.infoで設置した時のように、
同一サーバー内にサブドメインを設定して 設置してあげるとよいでしょう。
同一のバーチャルホストのドキュメント直下に2つのCakephpを同時に動かすのはちょっと無理があります。
もし、サクっとCakephpの基礎の基礎だけ勉強したい人はマスターの方だけでもいいかもしれません。

このプログラムのデータベース dumpファイル

必要ないかもしれませんが、このプログラムのデータベースの構造もダウンロードできます。
ダウンロードして、設置して、データベースのユーザー名とパスワードさえ設定できればプログラム初心者でも動かすことが出来ます。

誰でもブログで数万円収益を得る方法を考えた。

誰でもブログで数万円収益を得る方法を考えた。

前回の続きてで、ブログで最低数千円稼ぐ方法を考えたのですが、
もう少しブログで収益を上げたいところ。

リンク集ブログを他言語対応にする。

リンク集を仮に英語版を作ったとします。
英語圏の総人口は6億人です。
このうちの何割がインターネットユーザーなのかは分かりませんが、
単純計算でいくと6倍

日本で最低100pvでの推移で考えた場合、6倍の600pv稼げるとしたら、

日本で10サイト+メインブログ=3150円

英語版を10サイト300×6×10=18000円。

日本語版と英語版10サイトずつで合わせて21150円の収益を上げることが出来ます。
単純計算ですが、1日100pvの弱小サイトを10個作ってこれだけの収益が見込めるので、もう少しがんばって育ててあげればもっとpv数はいくはずです。

おまけ:英語版からメインブログへの流入

メインブログは一番の稼ぎ頭に育ってほしいところ。
もし英語で文章がスラスラ書けるならメインブログの英語版も作りたいところ。

とりあえずメインブログも翻訳ツールで英語版
私はこのサイトをチェックしているのですが、このサイトは相当日本語が怪しいです。
つまりこのサイトも翻訳ツールで作成しているだけなんです。
cakephp 日本語版

正しい文章、文法であるかなんて必要ないんです。問題はあなたのブログを読みに来てくれるかどうかなんです。

メインブログの多言語対応で
さらにプラスαの収入が見込めそうです。

こんな感じで10個だけではなくてもっと作っていければさらなる収益が見込めるのではないでしょうか。

ちなみに10個+メインブログの必要経費

メインブログのドメイン費用 1000~3000円/1年
リンク集型ブログのドメイン費用 1000~3000円/1年
サーバー維持費 200円~1000円/月

リンク集型のブログは何もオリジナルドメインではなく、サブドメインで十分だと思われます。なのでリンク集型のブログのドメインは1つしか取得しません。2つほどドメインがあればOK。

あと、多数サイトを運用するからと言ってデータベースが複数ないといけない理由はどこにもないので。
(WordPressを同一DBで複数展開する方法だってありますし)

でも出来ればメモリや容量の比較的余裕のあるものを選ぶべきですね。
1つのレンタルサーバー(共有サーバー)にWordpressを3つ入れたら急激に重くなった経験があります。
(レンタルサーバーはあたりはずれが多いですが)

私はRoot権付のVPSサーバー(月額500円)を利用しています。自分でサーバー構築できると、データベースの数を好きなだけ増やせるので、複数サイトを展開したい人にはオススメです。

ただ、サーバーのことを気にするのは サイトで少し収益が上がってからでもよいでしょう。それまではレンタルサーバーでも十分だと思います。

まだ絵に描いたモチ

と、3回に渡ってえらそうなことを書いてしまいましたが、まだ絵に描いたモチでしかなく、私自信まだ実行に移していません。
もうすぐ夏休みがあるのでそこで一気に実行に移して、年末には経過を報告したいと思います。

誰でもブログで収益数千円はを出す方法を考えた

ずばり収益出すには一つのブログじゃダメだ

ブログで収益を出すには前回の記事の通り、
1年愛情かけて育てて数百円の収益。
でもほとんどのブロガーの方はこんなものですよね。

私も気がついたんですがひとつのサイトでは限界があるわけでして。

質がダメならサイトを量産すればいい 

ひとつの記事の質に限界があるなら、
質にこだわらずサイト量産すればいいんです。

更新の手間をそれほどかけないですむ、たとえばデザインリンク集はいいんじゃないかと。
実は用途の限られたサイトはその一点だけに絞ってSEOすればいいいので対策しやすいのです。

この手のデザインリンク集ってプログラム書けなくてもWordPressカスタムして公開しているリンク集って多いですよね。

この手のブログなら、フリーのテンプレート使って短時間にたくさん作れそうです。

仮に1日あたりのpv数が100程度の弱小ブログ 弱小サイトでも、
私のブログが100pvで月200~300円稼いでいますから、
10個作れば月あたり3000円にはなります。

10個にもなれば リンク集的な簡易サイトでも更新が手間になるので、ある程度アクセス見込めるようになったらユーザー投稿型にして、マスターが承認するだけの仕組みを作ればいいんです。

その仕組みを作れない人はどうするんだってことになりますが…
(あ、そっか そういうの作って1000円くらいで売ればいいんじゃん
それは別問題だけど。)

サイト量産計画 案

あくまでこれは私の案です。パクってもいいですよ。
スマートフォンサイトリンク集
フリーフォントリンク集
jQeryプラグインリンク集
ベクター素材リンク集

メインブログは別に持つ

私のメインブログはこのITかあさんなのですが、
リンク集的なサイトにはこのブログのバナーをちょこちょこ貼って、外部からメインブログへの流入を見込み、相対的にメインブログの収益も上げようという目論見です。

簡易ブログ10個作った時の収益予想

仮に10個作ってそれぞれがコンスタントに100pv程度行ったとして、収益が

月額300円×10=3000円

仮に5%ずつメインブログに流入したとして、
300+3000円x0.05=150円

10個プラス メインブログ1個で1ヶ月3150円が関の山ですね。

いや、もう少しいくのでは?

でもこの予想は仮に1サイトあたりたったの100pvなので、当たればもう少しいくはずです。
例えばホームページのデザインリンク集って、あれだけでソーシャルブックマーク数が1000を超えたりしていますよね。
やっぱり○○のリンク集的な、何かの情報を一まとめにしておいてくれるようなサイトはみんな大好きなんです。

この手のサイトの利用者なら、繰り返しそのサイトを結構閲覧したりしますよね。

つまり、この手のリンク集型のブログは文章をきちんと書いてあるブログよりも遥かに需要があるということなんです。

アイディア次第で可能性が無限なのだと思います。
(すいません、まだやってないんで予想です。)

やっぱりブログで収益を上げるのは難しい?

仮に10個量産しても3000円程度?の予想ですから、完全収益とするには厳しいところです。

でも、あともう少しブログで収益を上げる方法を考えてみたいと思います
。目標は数万~10万なんで。
次回に続く。

このブログのpvとアドセンスの収益を報告します

このブログのpvと収益を報告します

自分の趣味と日々の業務でのメモだったり、Cakephpの入門に関する記事を書いて来ました。
更新の頻度としてはムラこそあれど、週1ペースで1年ほど更新を続けて来ました。

決して頻繁ではないけれど、忙しいなか、そこそこ更新してきたつもりです。

1年運用しても1日あたりのpvが100いかない。

このサイトのメインがCakephp入門なのですが、(SEOでもかなり上位)、実はそろそろCakephp入門は最終回を迎えます

つまり一番の稼ぎ頭であるCakephpにこれ以上の伸び代が期待出来ないのです。

ターゲットを少し広げる

今現状このブログのターゲットは比較的初心者よりのプログラマーで(私が中級者以下のプログラマーなので)
これをWEBデザイナー向けの記事も広げていければいいかもしれません。

全体のアクセス推移を見直して、器を広げることが大事だと痛感しました。

どう考えたって、プログラマーで、かつPHPユーザーでフレームワークはCakephpでしかも入門者であればキャパは狭いわけです。もう少し需要のありそうなジャンルの記事を増やしていかなければと思いました。

そうした中でまた再び私のブログを訪れた人の中にCakephpを興味を持って、熱心な読者になってくれるかもしれません。

キャパを広げるだけじゃだめだ

キャパを広げるだけじゃだめだと思った。下手な鉄砲数打てばそのうち当たるけど、当たり続けはしないわけで、当たったらもう少し当てなければその人は再び見に来てはくれないわけで。
やっぱりそこには、広いキャパと売りになるコンテンツも必要だと思う。
『役に立ちそうなデザインリンク集』
『オススメプラグイン100選』
これがキャパで、
『Cakephp入門』
『CentOS5でVPSサーバーを構築しよう』
これが売り。

アドセンスの収益と今後の予想

ちなみにアドセンスでの収益は1ヶ月あたり、200~300円程度でした。7月はまだ出ていないのですが、200円程度の予想です。(6月と同程度のアクセス状況と、あまり更新できなかったことも考慮して。)
仮にpvを倍にしたところでこのブログで収益の見込みは月あたり600円程度です。
広告の種類を増やせばこのブログだけで来年当たりは月あたり1000円くらいはいけるかもしれません。
(本来画像つきで公開したかったのですが、規約に違反するとのことなので、削除しました。)

ブログをやるメリット

1つのブログをすご〜〜く頑張ったところで、せいぜい収益は月額1000円が限界だなとこのブログを1年続けて感じたことでした。
でも、ブログを書き続けたことで得たのは数百円の価値ではありません。
『ブログ見ましたよ』
と声をかけてツイッターでフォローしてくれたり、なんとそれがきっかけで仕事を依頼されたことが実際にありました。
会社員なのでそこはお断りする形になりましたが、そういう人との繋がりやきっかけがブログにはあるんだな、と感じました。
だから例えこのブログの収益が数百円でも続けてはいきたいと思います。

今日のまとめ

たったひとつのブログでは数百円か1000円くらいが関の山。ブログだけで月収100万なんて、ウソウソ。

でももう少し、月収10万くらいはいけるんじゃないかって方法を考えたので、また次回更新します。

cakephpでブックマークアプリを作る (8)-2

ドキュメントルートを変更する

仮にURLがこうだとして

http://example.com/posts

このURLでアクセスすると、今までローカル環境で作った内容が表示されますよね。

http://example.com/posts

まずはエラーの解決。
エラーの出ているファイルのパーミッションをそれぞれ666に変更してください。

Warning (2): fopen(/home/sp.websta.info/public_html/app/tmp/cache/models/cake_model_default_bookmark_list) [http://php.net/function.fopen]: failed to open stream: Permission denied [CORE/cake/libs/file.php, line 154]
Warning (2): fopen(/home/sp.websta.info/public_html/app/tmp/cache/models/cake_model_default_posts) [http://php.net/function.fopen]: failed to open stream: Permission denied [CORE/cake/libs/file.php, line 154]

次に/public_html/app/views/layouts の
layout.ctpに記述している

<link rel="stylesheet" href="/css/style.css" type="text/css" media="all" />
<!--[if IE 6]>
<link rel="stylesheet" href="/css/ie6.css" type="text/css" media="all" />
<![endif]-->
<script type="text/javascript" src="/js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/js/jquery-func.js"></script>

CSS、Javascriptのパスを変更してあげます。(URLの直下ですからね。ローカルと構造がやや異なります)

ローカルと同じに表示された!

これでローカルと同じに表示されました。

ドキュメントルートを変更する

ちなみに私は

というURLで公開したものの

上記URLを叩いたらhttp://sp.websta.info/postsが表示されるようにしたい!

そこで変更するのが
/public_html/app/config/routes.php
です。

通常Cakephpでは、URLの後に来るものは全てコントローラーとしての認識をしてしまいますから、
特別にURLを何か指定したい時はここを触ることになります。

Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
↓↓↓↓↓↓↓
Router::connect('/', array('controller' => 'posts', 'action' => 'index', 'index'));

そして、上書きします

そして、URLだけでアクセスします

見事、URLだけでアクセスできるようになりました。
URLやファイルを特別何か指定したい場合はこのroutes.phpをちょこちょこ触ることが多いので覚えておくといいでしょう。