いいわけジェネレーターの作り方
2007年09月11日13:15
いいわけジェネレーターは簡単なPHPとちょっぴりのHTMLで作成されています。
HTMLをある程度理解されている方なら、簡単に理解できると思います。
作り方をご紹介いたしますね。

いいわけジェネレーター

<いいわけジェネレーターのコード>


<解説>

・文字コード
PHPでステップアップしてデータベースなどを使っていく際、どの文字コードが文字化けしないとかに関しては、私自身まだよくわかっていないのですが、とりあえず今回は文字コードを「utf-8」に指定しています。

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Terapadなど、文字コードを指定して保存できるテキストエディタで
ファイル→文字/改行コード指定保存→文字コード「UTF-8」、改行コード「CR+LF」
で保存してください。

Terapd
http://www5f.biglobe.ne.jp/~t-susumu/library/tpad.html


・echo
echoは、文字列を表示するPHPの命令文です。半角スペースを空けて、 "(ダブルクォーテーションでくくります。最後は ;(セミコロン)をつけてください。

echo "</div>¥n";

¥n は「改行」させるための記号です。


ダブルクォーテーションの中にダブルクォーテーションが入りそうな場合には、 '(シングルクォーテーションを使います。

echo "<div class='iiwake'><p>すみません。約束の時間に遅れそうです。<br />
今朝起きたら、僕の";


・if
ifは「もし、括弧の中の条件が満たされれば」次に進んでね♪という命令文です。
内容は{ }←この括弧でくくります。
今回は、「いいわけする」ボタンを押すことで、次に進むようになっています。

if ($_POST['submit']){ ←ここで始まって、

(中略)

echo "で待ち合わせ場所へ急いでいます。<br />";
echo "本当に申し訳ありませんが、今しばらくお待ちください。<br />";
echo "</p>¥n";
echo "</div>¥n";
} ← ここまで続いています。


・変数
$ (ドルマーク)がついた記号は「変数」と言って、いろいろな値などを「入れ込む」ことが出来ます。

$a = 1

の場合、変数aと1は等しい、ではなく、変数aに1を入れ込みなさい、という意味に思ってもらってよいかもしれません。
変数を定義して、いろいろな場所で使っていきます。


・rand
乱数を発生させる関数です。

$e=rand(1,6);

rand(1,6)で1から6までのランダムな数字を作り出してくれます。作り出した数字を変数eに入れ込んでます。


・switch
条件をたくさん分岐させる時便利な命令文です。

内容は{ }←この括弧でくくります。

switchの後の( ) ←この括弧の中に何をもって分岐させるかを書きます。
ここでは変数eで条件を分岐させています。

case 1: ←この部分で変数eが1だった場合の命令を下しています。

break;でswitchの{ }括弧から抜け出します。

下の例では、変数eが1の場合、echoで「健康に差し支えない程度の全力ダッシュ」を表示して、break;で、switchの括弧を抜けます。
randで1から6までの数字をランダムに発生させましたので、いずれかのcaseに変数eが該当し、それぞれの数値で違ったechoの内容を表示させています。

switch($e){
case 1:
echo "健康に差し支えない程度の全力ダッシュ";
break;
case 2:
echo "キャッシュで買った愛車のポルシェ(やっぱり馬力が違いますネ!)";
break;
case 3:
echo "地下鉄(混んでるので普段めったに乗らない)";
break;
case 4:
echo "この前買った電動アシスト自転車(わりと快適ですYO!)";
break;
case 5:
echo "鼻歌交じりのスキップ";
break;
case 6:
echo "千鳥足";
break;
}


・formとかinput
この部分で送信するためのボタンを作っています。
説明は割愛します。


<test2.phpを作成>

「いいわけジェネレーターのコード」をctrl+Aで全部選択してctrl+Cでコピー。
Terapadにctrl+Vでペーストして、
ファイル→文字/改行コード指定保存→文字コード「UTF-8」、改行コード「CR+LF」
で保存してください。
ファイル名「test2.php」で保存。

各自、内容を適当に書き換えてください。
randの値を増やして、同数のcaseを作れば、項目が増やせます。
書き換えたら上書き保存。


<レンタルサーバーにアップロード>

各自レンタルサーバーに「test2.php」をアップロードしてください。

http://自分のサイトのアドレス/test2.php

フォルダ「test」を作ってアップロードした場合、

http://自分のサイトのアドレス/test/test2.php


それぞれのアドレスにアクセスして、挙動を確認します。


<ブログに表示するには>

<iframe src="test2.phpを置いたアドレス" width="600" height="600" frameborder="0">
</iframe>

と書きます。

widthが横幅。heightが高さです。

いいわけジェネレーターの内容によっては高さが変わりますので、すこし高さには余裕を持たせた方がいいかもしれません。
高さが足りない場合、ブログにスクロールバーが表示されるので、少しかっこ悪くなります。ですが、少しかっこ悪いだけで、きちんと動作はすると思います。スクロールバーを動かせば内容を全て見れます。


<注意点>

たぶん内容的にはたいした事ないので、大丈夫とは思いますが、PHPファイルは、ものによってはサーバーに負担がかかることがあります。
サーバーによっては耐えられないこともあるかもしれませんので、PHPファイルの設置には、ご注意ください。
また、今回のPHPファイルでサーバーに負担がかかって何らかの不利益が生じても、責任は負いかねますのであらかじめご了承ください。


clip!PHP 

この記事へのコメント
ひとしょん。
ひとしょん。
2007年09月11日 14:31
afiliateさん こんにちは。
いいわけジェネレーター、面白すぎです。パソコンの前で
一人で爆笑してしまいました。
PHPでこういったものも作れてしまうのですね。

いつか私もPHPでいろいろサイト運営してみたいです。いつになることやら。。。



afiliate
どおも〜ひとしょん。さま。こんにちは。

良かった。ツボにハマってくれる人がいて。マジうれしいです。

自分では面白いと思って作業を始めたのですが・・・
同じ漢字をずっと見つめていると「何でこの文字こんな形なんだろう」という感覚を味わうゲシュタルト崩壊というものが起こってくるらしいのですが、作業時間が長くなると、まさにギャグのゲシュタルト崩壊を起こしだすのです。どこが面白いんだろ?と。

必ず誰か一人くらいはツボにはまってくれるはず・・・そう信じて作りあげました。信じてよかったです。爆笑して下さってありがとうございます!!

PHPでのサイト運営までは私も遠い気がします。とりあえずコツコツと出来ることを増やしたいと思います。

モアロマ
モアロマ
2007年09月11日 21:03
5

afiliateさ〜ん♪afiliateさ〜ん♪
感謝、感謝でございます。
解説の通りやってみました。もちろん、バッチリOK!

長年作りたかった「占い」がこれで、出来ちゃいますよ〜^^
本当になんとお礼を申し上げたらよいのやら。。。しかも、解説付きで。応用したい時もどこをどうすればいいのかも含めて凄く判りやすいです^^
今晩、眠れないかも。

お礼に私に出来ることがあったら何でもおっしゃってください。

afiliate
モアロマさま♪こんばんわ♪

さっすが、早いですね。
できましたか、良かったです。
caseを増やしてechoで同じ表示をさせるものを作ったら確率に偏りを持たせることも出来そうです。
できれば、サーバーに負担をかけないようJavaScript版がいいかと思ったのですが、とりあえずはPHP版で(笑)。

今までどおりでOK。お暇な時にコメント下さい♪。

pugu
pugu
2007年09月12日 10:01
こんにちは。PHPの本を数冊、買ったままで、ほとんど読んでいません。

かなり、わかりやすかったです。

afiliateのブログで勉強させていただきます!

afiliate
どおも〜puguさま。こんにちは♪。

わかりやすかったですか、うれしいです!

私もPHPは以前挫折してるし、今もほとんどわかっていません。とても勉強していただくほどのものはお出しできないと思いますが、
PHPでわかったことが増えたら、今回のようにまたご紹介させていただきますね。

あまり過度に期待されぬよう、おすすめします(笑)。

雄介
5

afilliateさん、こんにちは。

早くもPHPを使ったサービス(?)第2弾のリリースですかー。
この○○ジェネレーターってのは、PHPの習作のためだけでなく、アイデア次第でいろいろと面白いものができそうですね。

afilliateさん、この進化のスピードなら、そのうち本当にスゴいサイトを作り上げてしまいそうな予感です。


あ、あと「配列」ってのを覚えると、switch文を使わないすっきりしたコードになって、幸せな気分になれるかもしれませんよ。


afiliate
どおも〜雄介さま。こんにちは。

サービス(?)。まさに「?」が欠かせないですね(笑)。

コンテンツによっては面白いものが出来ると思うのですが、私、文章を作成する能力が無いんですよね。「いいわけ」くらいが限界でした(笑)。

「配列」ですね、わかりました。幸せの気分を味わうために覚えるようにがんばってみます♪。アドバイスありがとうございました。これからもよろしくお願いします。

pugu
pugu
2007年09月12日 20:15
5

こんばんは。

※)先ほどのコメントで「さん」が抜けていました。申し訳ございません。afilliateをコピペするので精一杯でした。

ところで、この記事のお陰で、いくつか面白いものを作れそうです。

サーバーの負荷も、テキストを返すだけなので、あまりないんですよね?ただ、サーバーを追い出されるのもツライので、新しいレンタルサーバーを借りて、試してみます。

afiliate
どおも〜puguさま。

puguさまのインスピレーションに火をつけることが出来て幸いです(笑)。
モアロマさまは「占い」を作るとのことでしたが、puguさまが何を作られるのか、楽しみにしています。
これからも皆様の創作意欲を後押しできるような解説が出来るといいなあ。

サーバーへの負荷は正直わからないのですよね。チカッパ!レンタルサーバーはアクセス解析で一日の転送量がわかるので、それを目安にヤバそうになったらやめようと思っています。サーバーが大丈夫なら、PHPの底力はすごそうですよ。
http://afiliate.livedoor.biz/archives/50906933.html
↑追記を参照されてください。

敬称はお気になさらずに♪




この記事へのトラックバック


1. ありがたい。ありがたすぎる。  [ モアロマ解決広場♪ ]   2007年09月11日 20:53