tag:blogger.com,1999:blog-14011221483521497882024-03-13T18:01:38.372+09:0069のはじめてのLAPPLinux,Apache,PostgreSQL,PHPで簡単なサイト構築・公開までやっていきたいです。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.comBlogger40125tag:blogger.com,1999:blog-1401122148352149788.post-19460515945801368652012-01-12T23:32:00.003+09:002012-01-12T23:32:47.976+09:002012どうも、69と申します。<br />
<br />
<br />
またまた更新間隔が開いてしまいました。。。<br />
<br />
今度こそは続けようと思ったのですが。。。<br />
<br />
そして、Zendによる開発も若干止まり気味。。。<br />
<br />
<br />
こんな69ですが、2012年もよろしくお願いいたします。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-61731869141263544042011-12-07T23:07:00.001+09:002011-12-07T23:18:10.343+09:00チートシートどうも、69と申します。<br />
<br />
お久しぶりですね。<br />
<a href="http://framework.zend.com/">ZendFramework</a>によるWEBサイトの構築。。。進みません。。。<br />
いや~、むずかしいですね!<br />
<br />
<br />
<a name='more'></a>前回にMVCモデルというのを説明しました。<br />
そして、今M!Model部分は完成しました。一応。<br />
<br />
Modelなのでデータ管理、データベース接続してデータの取得とかするところです。<br />
動作の保証ができていないので、ソース公開はまた今度。<br />
<br />
ググっていると、いろいろあるんですね~<br />
チートシートってご存知ですか?<br />
英語で言うと<br />
<br />
<blockquote class="tr_bq">
cheat-sheet</blockquote>
カンニングペーパーのことみたいです。カンペってやつ。<br />
<a href="http://framework.zend.com/">ZendFramework</a>のものも見つけたので、公開しちゃいたいけど。。<br />
自分が作ったわけでもなく、大元のサイトも忘れたので。。<br />
英語だったので、翻訳したら公開します。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-39734249205445000582011-11-19T00:28:00.001+09:002012-01-12T23:28:48.949+09:00MVCモデルどうも、69と申します。<br />
<br />
<br />
ご無沙汰しております。<br />
現在<a href="http://framework.zend.com/">ZendFramework</a>を使ってブログサイト構築中です。<br />
<br />
<br />
<a name='more'></a><br />
<br />
学ぼうとしたら本が必要だなと思って購入したら<br />
サンプルプログラムを写してるだけなんですけどね。。。<br />
<br />
せっかくなので<a href="http://framework.zend.com/">ZendFramework</a>について、ご説明。。<br />
<br />
<a href="http://framework.zend.com/">ZendFramework</a>は無料にて使うことができます!<br />
ライブラリのように使用することも可能です!<br />
そして、高速らしい!<br />
また、PHP5専用に開発されている!みたいです。<br />
<br />
<br />
ところで、フレームワークを語る上で重要な<br />
<br />
<blockquote class="tr_bq">
MVCモデル</blockquote>
<br />
って知ってますか?僕は初めて聞きました。。<br />
<br />
<blockquote class="tr_bq">
Model<br />
View<br />
Controller</blockquote>
<br />
の頭文字をとってるようです。<br />
<br />
<blockquote class="tr_bq">
”Model”はデータ管理<br />
”View”は画面表示<br />
”Controller”は全体の制御</blockquote>
<br />
と処理を分散しています。<br />
三権分立というか専業制というか。。。<br />
そうすることによって、統制が取れやすくなるそうです。<br />
だから、大規模開発にも<a href="http://framework.zend.com/">ZendFramework</a>は使える!んだそうです。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-22093399434624197692011-11-03T20:31:00.000+09:002011-11-03T20:31:20.264+09:00クラスどうも、69と申します。<br />
<br />
学生時代のクラス替えの思い出に<a category="すべての商品" href="" type="amzn"> ひたパン</a>してます。。<br />
<br />
<br />
<a name='more'></a><br /><br />
<a href="http://69lapp.blogspot.com/2011/10/blog-post_2510.html">動的</a>までで、一応ケータイのゲームもどきの事は作れます。<br />
実際教えてもらったのは、ここまででした。<br />
<br />
でも、今回は<a href="http://framework.zend.com/">ZendFramework</a>って言うのを使ってみたいので<br />
クラスについてお勉強します。<br />
<br />
まず、クラスについて<br />
<blockquote class="tr_bq">
クラス(class)は、<a href="http://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%A9%E3%82%B9%E3%83%99%E3%83%BC%E3%82%B9">クラスベース</a>の<a href="http://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91">オブジェクト指向</a>において<a href="http://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)">オブジェクト</a>の設計図にあたるもの。<a href="http://ja.wikipedia.org/wiki/%E6%8A%BD%E8%B1%A1%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B">抽象データ型</a>の一つ。クラスから生成したオブジェクトのことを<a href="http://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%82%B9%E3%82%BF%E3%83%B3%E3%82%B9">インスタンス</a>という。</blockquote>
<br />
だそうです。 あとよく例えられるのが「たい焼き」です。<br />
<br />
<blockquote class="tr_bq">
金型(クラス)から生成されるたい焼き(インスタンス)</blockquote>
という感じです。<br />
で?という感じですが。。。まぁ、その辺は置いておいて。。。<br />
<br />
次にクラスの定義方法です。<br />
<br />
<blockquote class="tr_bq">
class クラス名{<br />クラスの実装<br />}</blockquote>
という風に定義します。<br />
次はクラスからインスタンスの生成方法です。<br />
<br />
<blockquote class="tr_bq">
$a = new クラス名;</blockquote>
と生成します。<br />
クラスのメソッドを使う場合は<br />
<br />
<blockquote class="tr_bq">
$a -> メソッド名;</blockquote>
とします。”->”アロー演算子って言います。<br />
あと、アクセス修飾子とかいろいろ有りますが、それはおいおい。。<br />
クラスの静的な値、プロパティ、定数などをしようする場合は<br />
<br />
$a::定数名<br />
<br />
という風に行います。”::”ダブルコロンです。ねずっちではないですよ。<br />
謎かけなんてできないですよ。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-87411082677801160212011-10-31T22:25:00.000+09:002011-10-31T22:25:02.566+09:00PostgreSQLへの接続どうも、69と申します。<br />
<br />
ちょっと前に<a href="http://lifehack2ch.livedoor.biz/archives/51296858.html">こういう記事</a>を読んだので、煮干しを食べながらの更新です。<br />
そして、<a category="食品&飲料" href="http://www.blogger.com/blogger.g?blogID=1401122148352149788" type="amzn"> 煮干し</a>旨い!<br />
<br />
で、本題はというと、PostgreSQLへの接続についてです。<br />
<a name='more'></a>え~、前に<a href="http://69lapp.blogspot.com/2011/10/hba.html#more">HBA</a>の記事で接続の許可を設定しました。<br />
しかし、実はそれだけでは足りません!!<br />
<br />
データベースクラスタ内の”postgresql.conf”をいじらないといけません。<br />
この”postgresql.conf”ファイルはデフォルト値を明示的に”#”コメントとして書いてあります。<br />
で、変更する場合は”#”コメントをはずし、変更値を入力します。<br />
<br />
<br />
今回は接続の設定を行います。<br />
<br />
<blockquote class="tr_bq">
# listen_address = 'localhost'<br />#port = 5432</blockquote>
<br />
となってるはずでした。。。<br />
今確認したら<br />
<br />
<br />
<blockquote class="tr_bq">
listen_address = '*'<br />port = 5432</blockquote>
<div>
<br /></div>
<div>
となっていました。。。</div>
<div>
自分は変更していないので、もしかすると<a href="http://www.openscg.org/se/postgresql/packages.jsp">ダウンロードしたRPM</a>がそういうものなのかもです。</div>
<div>
行おうと思っていた設定なので、万々歳なのですが。。</div>
<div>
意味はというと</div>
<div>
<br /></div>
<blockquote class="tr_bq">
listen_address = '*'</blockquote>
<div>
<br /></div>
<div>
が、全てのホストからの接続を受け付ける</div>
<div>
<br /></div>
<blockquote class="tr_bq">
port = 5432</blockquote>
<div>
<br /></div>
<div>
が、ポート”5432”番を使用する、です。</div>
<div>
最初に書いた</div>
<div>
<br /></div>
<div>
<blockquote class="tr_bq">
# listen_address = 'localhost'<br />#port = 5432</blockquote>
</div>
<div>
では、</div>
<div>
<br /></div>
<blockquote class="tr_bq">
ローカルホストから5432番ポートへの接続のみを受け付ける</blockquote>
<br />
となってしまいます。接続に関しては以上です。<br />
あ、ちなみにポートを変更した場合、クライアントはポートを指定しないと接続できません。。<br />
クライアントのツールの設定を変更すれば不要なんですが、ポート指定の方が楽です。<br />
<br />
<br />
まとめると<br />
<br />
<blockquote class="tr_bq">
<データベースクラスタ>/pg_hba.conf<br /> ⇒接続認証設定<br /><データベースクラスタ>/postgresql.conf<br /> ⇒接続受付設定</blockquote>
<br />
<div>
<br /></div>
<div>
を行えば、他のホストからのPostgreSQL接続は可能になるということです。</div>
<div>
以上を行って、接続できない場合は。。。</div>
<div>
ポートの競合やデータベースが起動しているかなどが怪しいです。。多分。。</div>
<div>
それか、もっと下位層(Pingが通るかなど)も確かめるべきですね!</div>
<br />69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-50631711919245325362011-10-30T22:00:00.000+09:002011-10-30T22:00:34.231+09:00動的どうも、69と申します。<br />
<br />
今回は動的プログラム。<br />
<br />
<br />
<a name='more'></a><br />
<br />
<a category="和書" href="" type="amzn"> PHP</a>っていうのは、動的なプログラムなので。。<br />
つまり<a category="和書" href="" type="amzn"> PHP</a>そのものかなと思っておりますが。。<br />
<br />
簡単に言うと、一人ひとり、一回一回返す応答が異なるプログラムだと思ってくれれば。。<br />
たとえばちょっと違うけど、ググる時に検索条件のよって表示が異なるでしょ?<br />
そういうことです!<br />
<br />
あ、それを<a category="和書" href="" type="amzn"> CGI</a>って言うらしいんですけどね。<br />
え~、たしか<br />
<br />
<blockquote class="tr_bq">
Common Gateway Interface</blockquote>
<br />
だっけな?入り口は一緒だけど出口は違うみたいな。。<br />
<br />
で、どうやって行うのか?<br />
とりあえず、簡単に。。<br />
ホントに簡単に。。<a category="和書" href="" type="amzn"> セキュリティ</a>とかまだ考えられないので。。<br />
<br />
cgi_sample.php<br />
<br />
<blockquote class="tr_bq">
<?php<br />
$a = $_REQUEST["sample"];<br />
$a2 = $_REQUEST["sample2"];</blockquote>
<div>
<br />
<br />
と定義しておき、cgi_sample.phpをブラウザから見るときに<br />
<br />
<blockquote class="tr_bq">
http://<FQDN>/cgi_sample.php?sample=100&sample2=50</blockquote>
<br />
とすると”$a”には100が代入され、”$a2”には50が代入されます。<br />
それがなんなの?と言われてしましそうな、お話しでしたが。。<br />
<br />
<blockquote class="tr_bq">
ブラウザからの値が変わることによって代入される値が変わる!</blockquote>
<br />
それが大きいんですね!<br />
つまり、同じファイルにアクセスしながら表示結果が違う。。<br />
まさに”<a category="和書" href="" type="amzn"> CGI</a>”。</div>69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-11709389385013954392011-10-30T11:55:00.001+09:002011-10-30T11:55:41.616+09:00関数どうも、69と申します。<br />
<div>
<br /></div>
<div>
<br /></div>
<div>
今回は関数についてです。</div>
<div>
<a name='more'></a>関数には”標準関数”と”自作関数”の2つがあります。</div>
<div>
<br /></div>
<div>
”標準関数”はPHPに最初から組み込まれている?関数で、何も意識せず使用可能です。</div>
<div>
”自作関数”はその名の通り自分で作成した関数のことです。</div>
<div>
<br /></div>
<div>
では、関数とはなんなのか?</div>
<div>
<br /></div>
<blockquote class="tr_bq">
y = f(x)</blockquote>
<div>
<br /></div>
<div>
覚えてますか?中学高校くらいでこんなの見たと思います。</div>
<br />
<blockquote class="tr_bq">
ある式”f()”に”x”という値を入れると”y”という値が得られる</blockquote>
<br />
ということですね。<br />
<div>
この時の”f()”を関数、”x”を引数、”y”を戻り値と呼びます。</div>
<div>
<br />
よく使われる標準関数は<br />
<br />
<br /><blockquote class="tr_bq">
rand();<br /> ⇒ランダムの数値を取得<br />strlen();<br /> ⇒文字列の長さを取得※全角文字は認識できない<br />explode();<br /> ⇒文字列を分割し、配列を取得<br />str_replace();<br /> ⇒文字を置換し、文字列を取得<br />count();<br /> ⇒配列の”キー”の数を取得<br />max();<br /> ⇒配列の”value”の最大値を取得<br />min();<br /> ⇒配列の”value”の最小値を取得<br />sort();<br /> ⇒配列の”value”の順番を小さい順に並び変える<br />array_search();<br /> ⇒配列の”value”の文字列を検索<br />date();<br /> ⇒日付を取得</blockquote>
</div>
<div>
<br /></div>
<div>
あとは何度か出ている</div>
<div>
<br /></div>
<blockquote class="tr_bq">
print_r()</blockquote>
<div>
<br /></div>
<div>
とか</div>
<div>
<br /></div>
<blockquote class="tr_bq">
array()</blockquote>
<div>
<br /></div>
<div>
とかですかね?よく使うのは。</div>
<div>
その他の標準関数については<a category="和書" href="" type="amzn">PHP辞典</a>などやググってみてください。<br />
あと、講師曰く<br />
<br />
<blockquote class="tr_bq">
どういう機能の関数があるかを覚えておけばOK<br />使い方はググれ</blockquote>
<br />
だそうです。<br />
次に”自作関数”についてです。<br />
<br />
関数を使う時って<br />
<br />
<blockquote class="tr_bq">
戻り値 = 関数名( 第一引数 , 第二引数 , … );</blockquote>
<br />
という形なんですね。基本的に。あ、戻り値は変数と読み替えてもOKです。<br />
”自作関数”も使い方は同じです。<br />
<br />
では、何が違うのか?<br />
そう、関数の定義を自分でしないといけないんです。<br />
どうやって定義するのか?それは<br />
<br />
<blockquote class="tr_bq">
function 関数名( 引数リスト ) {<br />処理;<br />}</blockquote>
という風に行います。<br />
自作関数はPHPのプログラムの本体ファイルとは別ファイルにしておくことが多いです。<br />
そして、”include”や”require”を使って読み込みます。<br />
<br />
function_hello.php<br />
<blockquote class="tr_bq">
<?php<br />function hello(){<br />print "HELLO";<br />}</blockquote>
<br /><br />
<br />
index.php<br />
<blockquote class="tr_bq">
<?php<br />include("function_hello.php");<br />hello();</blockquote>
<br />
↑のように<br />
<br />
<blockquote class="tr_bq">
”function_hello.php”に関数を定義し、”index.php”で関数を使用する</blockquote>
<br />
という使い方です。<br />
<br />
基本的にPHPの本体プログラムの中に”function”が有ってはダメです。<br />
いや、有っていいんですけど、いろんなファイルでその関数を使用していた場合、<br />
そのファイル全てを修正しなくてはいけなくなってしますので。。<br />
逆に言うと、その関数を使い回さない、そのファイルでしか使用しない場合はOKということです。</div>69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-14884551617183445262011-10-29T00:23:00.000+09:002011-10-29T00:23:11.237+09:00青春の遊び<br />
どうも、69と申します。<br />
<br />
今回は”IF文”、”FOR文”、”配列”を使って遊んでみましょう!<br />
それにしても、<a category="食品&飲料" href="http://www.blogger.com/blogger.g?blogID=1401122148352149788" type="amzn"> ばかうけ</a>ウマ過ぎ!<br />
やめられない、とまらないです。。<br />
<br />
<br />
<a name='more'></a><br />
<br />
早速ですが<br />
<br />
<blockquote class="tr_bq">
■□■□■□<br />
□■□■□■<br />
■□■□■□<br />
□■□■□■<br />
■□■□■□<br />
□■□■□■</blockquote>
<br />
↑の図形?を作っていましょう。<br />
配列使うのがわかりやすいですね。<br />
<br />
<blockquote class="tr_bq">
$a = array(array("■","□","■","□","■","□"),<br />
array("□","■","□","■","□","■"));</blockquote>
これを<br />
<br />
<blockquote class="tr_bq">
print_r($a); </blockquote>
<br />
で表示させてあげればOKかな?<br />
もっと苦労したければ<br />
<br />
<blockquote class="tr_bq">
print $a[0][0];<br />
print $a[0][1];<br />
print $a[0][2];<br />
print $a[0][3];<br />
print $a[0][4];<br />
print $a[0][5]."<br>";</blockquote>
のように1つずつ表示させてください。<a category="和書" href="http://www.blogger.com/blogger.g?blogID=1401122148352149788" type="amzn"> 苦労は買ってでもしろ</a>と言いますので。。<br />
他の方法はというと<br />
<br />
<blockquote class="tr_bq">
for ( $i =0 ; $i <= 5 ; $i++ ) {<br />
for ( $j = 0 ; $j <= 3 ; $j++ ) {<br />
if ( !( ( $i + $j ) % 2 ) ) {<br />
print "■";<br />
} else {<br />
print "□";<br />
}<br />
print "<br>";<br />
}<br />
}</blockquote>
と多重ループを使って表現できます。これだとたった10行でおしまいです。<br />
簡単でしょ?<br />
この多重ループと”IF文”を使っての図形?を書くのにハマって<br />
講義を聞かずにいたら、講師の方に怒られました。。<br />
という、<a category="すべての商品" href="" type="amzn"> 青春の思ひ出</a>。。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-66784526290936917302011-10-28T23:06:00.000+09:002011-10-28T23:06:05.339+09:00多次元配列どうも、69と申します。<br />
<br />
今日は多次元配列の続きです。<br />
続きというか、言い忘れていたというか。。。すいません。<br />
<br />
<br />
<a name='more'></a><a href="http://69lapp.blogspot.com/2011/10/blog-post_27.html">専用</a>の記事で多次元配列への”value”の格納の方法を紹介しました。<br />
<br />
<blockquote class="tr_bq">
$a[][]=1;</blockquote>
<br />
でしたね。連想配列も可能ですね。<br />
それ以外にもあるんですね!それが<br />
<br />
<blockquote class="tr_bq">
$a = array(array(1,2,3,4),<br />
array(5,6,7,8),<br />
array(9,10,11,12));</blockquote>
という方法です。あ、そういえば言いましたっけ?<br />
”array()”というのは配列を作成する関数です。<br />
<br />
関数って?となるかもしれませんが、それはおいおい。<br />
あ、おいと言えば巨人の<a category="和書" href="" type="amzn"> 原監督</a>の甥っこが大変ですね~<br />
ドラフトという制度なんだからしょうがないですけどね。。<br />
高校卒業後はずっと電話待ってる身からすれば、1位で競合なんて夢のまた夢。。<br />
<br />
そんなことは、置いといて。。<br />
↑を見ると<br />
<br />
<blockquote class="tr_bq">
”array()”の中に”array()”</blockquote>
<br />
が使われています。つまり、2次元配列となっています。<br />
縦軸を”y”、横軸を”x”として(y,x)として表すと<br />
<br />
<blockquote class="tr_bq">
(0,0)=1<br />(0,1)=2<br />(0,2)=3<br />(0,3)=4<br />(1,0)=5<br />(1,1)=6<br />(1,2)=7<br />(1,3)=8<br />(2,0)=9<br />(2,1)=10<br />(2,2)=11<br />(2,3)=12</blockquote>
と”value”が格納されます。<br />
実際に$aを表示させると<br />
<br />
<blockquote class="tr_bq">
1234<br />5678<br />9101112</blockquote>
となります。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-19293431362355910602011-10-27T23:55:00.002+09:002011-10-31T21:46:08.380+09:00HBAどうも、69と申します。<br />
<br />
今回はPostgreSQLについてです。<br />
インストールも終わったし、PHPもそろそろデータベースが必要になりそうなので。。<br />
<br />
では、いきなりですがタイトルのHBAとは何の略でしょうか?<br />
<br />
<br />
<a name='more'></a>ググって見ると”<a href="http://www.google.co.jp/search?aq=f&gcx=c&sourceid=chrome&ie=UTF-8&q=HBA#hl=ja&q=HBA%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF&revid=1765429965&sa=X&ei=MGqpTr60A8rGmQWe2dXkAg&ved=0CB4Q4QIoAw&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=df5fcf8f8a78d20b&biw=1024&bih=653">HBA ブラック</a>”とか”<a href="http://www.h-beauty.info/">NPO法人日本ホリスティックビューティ協会</a>”とか出ます。。<br />
<br />
しかし、ヒント:PostgreSQL<br />
正解:<span class="Apple-style-span" style="background-color: white;">host-based authentication(ホストベース認証)</span><br />
<span class="Apple-style-span" style="background-color: white;"><br /></span><br />
<span class="Apple-style-span" style="background-color: white;">PostgreSQLのクライアント認証を行うことです。では、どのファイルで行うか?</span><br />
<br />
<blockquote class="tr_bq">
<span class="Apple-style-span" style="background-color: white;">データベースクラスタ内のpg_hba.conf</span> </blockquote>
<br />
<span class="Apple-style-span" style="background-color: white;">というファイルです。データベースクラスタとは?</span><br />
データベース格納領域のことです。(<a href="http://69lapp.blogspot.com/2011/10/postgresql_22.html#more">PostgreSQL設定</a>参照)<br />
<a href="http://69lapp.blogspot.com/2011/10/postgresql_22.html#more">PostgreSQL設定</a>ではクラスタとは言っていないですが。。。<br />
書式は<br />
<br />
<blockquote class="tr_bq">
local <database> <user> <auth-method> (<auth-options>)</blockquote>
<br />
<blockquote class="tr_bq">
host <database> <user> <CIDER-address> <auth-method> (<auth-options>)<br />
</blockquote>
<br />
<blockquote class="tr_bq">
hostssl <database> <user> <CIDER-address> <auth-method> (<auth-options>)<br />
</blockquote>
<br />
<blockquote class="tr_bq">
hostnossl <database> <user> <CIDER-address> <auth-method> (<auth-options>)<br />
</blockquote>
<br />
<blockquote class="tr_bq">
host <database> <user> <IP-address> <IP-mask> <auth-method> (<auth-options>)<br />
</blockquote>
<br />
<blockquote class="tr_bq">
hostssl <database> <user> <IP-address> <IP-mask> <auth-method> (<auth-options>)<br />
</blockquote>
<br />
<blockquote class="tr_bq">
hostnossl <database> <user> <IP-address> <IP-mask> <auth-method> (<auth-options>)</blockquote>
<br />
<div>
<br /></div>
<div>
の7つのいずれかです。</div>
<div>
最初の”local”,”host”,”hostssl”,”hostnossl”は接続形式です。</div>
<div>
<br /></div>
<blockquote class="tr_bq">
”local”はUNIXドメインソケット経由の接続です。<br />
簡単に言うと、同じノード上からの接続です。<br />
でも、実はlocalhost経由だとTCP/IP経由になるんです。。<br />
”host”はTCP/IP経由の接続です。<br />
これは異なるノード同士の接続ですね。</blockquote>
<div>
<br /></div>
<div>
あとは<a href="http://www.postgresql.jp/document/9.0/html/client-authentication.html">マニュアルの第19章</a>をご覧くださいな!</div>
<div>
で、今回言いたいのは、デフォルトでは</div>
<div>
<br /></div>
<blockquote class="tr_bq">
localとTCP/IPのlocalhostしか接続を許可されていない</blockquote>
<div>
<br /></div>
<div>
ということです。</div>
<div>
自分の今回の環境はWEBサーバもDBサーバも同じノードなので構わないのですが、</div>
<div>
別サーバを作る方は要注意です。</div>69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-78154589153394069462011-10-27T22:45:00.003+09:002011-10-28T00:00:51.598+09:00専用どうも、69と申します。<br />
<br />
今日は専用のあれについて。<br />
<br />
<a type="amzn" category="すべての商品"> シャア専用</a> ではありません。<br />
配列専用のあれです。<br />
<br />
<br />
<a name='more'></a>配列専用の繰り返し文をご紹介します。その名も<br />
<br />
<blockquote class="tr_bq">foreach文</blockquote><br />
配列の”キー”の個数分繰り返します。<br />
書き方は<br />
<br />
<blockquote class="tr_bq">foreach ( 配列名 as $key => $value ){<br />
ループしたい処理;<br />
} </blockquote><br />
です。”配列名”と処理のところだけ変更すればOKです。<br />
これは連想配列でも使用可能です。定義した順番で実行されます。<br />
<br />
<blockquote class="tr_bq">$a = array(10,20,30);<br />
foreach ( $a as $key => $value) {<br />
print $key ."&nbsp;" .$value ."<br>";<br />
}</blockquote>配列aを定義して表示させています。ちょっとHTMLも使ってますね!<br />
”&nbsp;”というのは半角スペースを表します。”<br>”は改行です。<br />
<br />
ちょっと、スペースあるので多次元配列についても触れます。<br />
<a href="http://69lapp.blogspot.com/2011/10/blog-post_6170.html">ここ</a>で少し触れましたが、多次元配列とはマンションみたいなものです。<br />
部屋が1号室、2号室だけではなく、階ができて201号室、301号室と縦軸が増えたイメージです。<br />
数学っぽく言うとX軸とY軸を使う配列。それが2次元配列です。<br />
3次元配列となると奥行き、Z軸も出てきますね。<br />
でも、大体は2次元くらいまでしか使わないです。<br />
2次元配列の書き方は<br />
<br />
<blockquote class="tr_bq">$配列名[ タテ ][ ヨコ ]</blockquote><br />
です。”キー”が2つです。 それ以外はただの配列と変わりません。<br />
では、”value”を格納してみます。<br />
<br />
<blockquote class="tr_bq">$data[ "param" ][ "id" ] = 1;<br />
$data[ "param" ][ "name" ] = "69";<br />
$data[ "item" ][ "count" ] = 2;</blockquote>書いている自分ですら混乱しますが 、表を考えるとわかるかな?少しは。。<br />
<br />
<blockquote class="tr_bq">id name<br />
param 1 69<br />
count<br />
item 2</blockquote>表でも分かりにくいですけど。。<br />
”param”行の”id”には”1”というvalueが格納されて、<br />
”param”行の”name”には”69”というvalueが格納されてます。<br />
”item”行の”count”には”2”というvalueが格納されています。<br />
<br />
列は一致しなくてOKです。”param”行の1列目と”item”行の1列目が同じ項目ではありません。<br />
マンションの例だと。。。難しい。<br />
<br />
201号室の下が101号室でなくてもいいんです。<br />
10A号室でも102号室があっても構いません。<br />
そんな感じです。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-35893379521416757392011-10-26T23:01:00.004+09:002011-10-28T00:03:46.291+09:00配列どうも、69と申します。<br />
<br />
今回は配列についてです。<br />
おっぱいが大きいお笑いコンビではありません。<br />
もちろん、<a type="amzn" category="DVD"> ジョニーデップ</a>でもありません。<br />
<br />
<br />
<a name='more'></a>パイレーツじゃなく、配列です。<br />
<br />
配列とは<a href="http://69lapp.blogspot.com/2011/10/blog-post_24.html">変数</a>が連なったものと考えればOKです。<br />
変数の箱がいくつかつながったものですね。<br />
書き方は<br />
<br />
<blockquote class="tr_bq">$配列名[キー]</blockquote><br />
配列名は変数名と同じです。その配列の名前です。<br />
”キー”とはなにか?<br />
英語で書くと”key”です。鍵、手掛かりという意味ですね。<br />
そう!手掛かりです。<br />
配列とは変数が連なったものと言いました。<br />
<br />
<blockquote class="tr_bq">$a[3]</blockquote>という例をあげます。<br />
配列名が”a”でキーが”3”ですね。<br />
これは配列aの中に4つの変数があると思ってください。実際には違いますが。。。<br />
あ、なんで4つかというと。。。<br />
キーの開始は”0”からなので”0,1,2,3”の4つの 変数ということになります。<br />
10個の変数が必要だったら”キー”を”9”にします。<br />
ちょっと変数と言うと、本物の変数なのか判らなくなってしまうので<br />
配列の中のほうを”部屋”と呼びます。<br />
<br />
あ!配列はマンションをイメージしていただければ分かりやすいかもです。<br />
マンションにはたくさんの部屋があります。それを1号室、2号室とやってますね。<br />
その、1号室、2号室というのが”キー”です。<br />
マンション全体をライオンズマンションとか呼びますよね?それが”配列名”です。<br />
2階、3階となってくると”2次元配列”となります。<br />
<br />
で、各部屋には値が入ります。これを”value”と言います。<br />
まぁ、マンションの例でいえば、住人でしょうか?<br />
”value”は数値、文字、変数、配列などを格納できます。<br />
”value”の格納の仕方は<br />
<br />
<blockquote class="tr_bq">$配列名[ キー ] = value ;</blockquote>です。例をあげると<br />
<br />
<blockquote class="tr_bq">$a[ 0 ] = 100 ;</blockquote> ”配列a”の”0”という部屋に”100”という値を格納しています。<br />
もし、”キー”を書かなかった場合、”キー”の小さい順の格納されます。<br />
↑のようにひとつひとつ格納してもいいのですが、他にも方法はあります。<br />
<br />
<blockquote class="tr_bq">$b = array(100,101,102,103);</blockquote><br />
または<br />
<br />
<blockquote class="tr_bq">$b = array(0 => 100,1 => 101,2 => 102,3 => 103);</blockquote><br />
どちらも同じことです。最初の例で言うなら<br />
<br />
<blockquote class="tr_bq">$b[ 0 ] = 100;<br />
$b[ 1 ] = 101;<br />
$b[ 2 ] = 102;<br />
$b[ 3 ] = 103;</blockquote>です。では、表示方法はというと<br />
<br />
<blockquote class="tr_bq">print $b[ 0 ];<br />
print $b[ 3 ];</blockquote>で大丈夫です。ただ、配列の全ての部屋の”value”を表示させたい場合は<br />
<br />
<blockquote class="tr_bq">print_r($b);</blockquote>が便利です。<br />
続いて”連想配列”です。これはPHP特有だそうです。<br />
配列というくらいなので、基本的には配列と同じです。<br />
どこが違うのか?<br />
<br />
それは<br />
<br />
<br />
<blockquote class="tr_bq">”キー”に文字列を使う</blockquote><br />
という点です。これが使えるとvalueが何の値なのかがわかりやすいです。<br />
では、書き方です。<br />
<br />
<blockquote class="tr_bq">$配列名["キーの文字列"];</blockquote> ”value”の格納の仕方は普通の配列を同じです。<br />
<br />
<blockquote class="tr_bq">$c["69"] = "天才";</blockquote><br />
や<br />
<br />
<blockquote class="tr_bq">$c = array("70" => "天使","71" => "神");</blockquote> です。この場合、”キー”は省略できません。ただの配列になってしまいます。<br />
表示方法も配列と同じです。<br />
<br />
<blockquote class="tr_bq">print $c[ "69" ];<br />
print_r($c);</blockquote><br />
です。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-19933378050294512562011-10-26T00:15:00.001+09:002011-10-26T00:15:41.640+09:00あいだどうも、69と申します。<br />
<br />
今回は「あいだ」について<br />
だって人間だもん、ではありません。<br />
好きだ!君が僕の全てだ!でもありません。<br />
<br />
<br />
<a name='more'></a>あいだみつをさんについてあまり知りません。<br />
愛についてはもっと知りません。<br />
では、今回の「あいだ」は何か?<br />
<br />
<br />
「間」です。<br />
マの悪い自分には辛い話ですが。。<br />
<br />
<br />
「~の間・・・を繰り返す」という文です。<br />
”FOR文”または”WHILE文”を使います。<br />
使い分けは、終了条件によって変えるのかなと思っています。<br />
詳しくはまた後で。<br />
<br />
まず、”FOR文”の書き方です。<br />
<br />
<blockquote class="tr_bq">
for ( 初期値 ; 条件式 ; ループカウンタ ) {<br />繰り返す処理;<br />}</blockquote>
<br />
と書きます。文字で書くと分かりにくいですが。。。<br />
<br />
<blockquote class="tr_bq">
初期値から始まり条件を満たす間、ループカウンタを数えながら処理を行う</blockquote>
<br />
ということです。条件やループカウンタの設定などを間違えると一生終わりません!<br />
<br />
<blockquote class="tr_bq">
for ( $i = 0 ; $i > -1 ; $i++ ) {<br />処理;<br />}</blockquote>
↑、一生終わりません。<br />
初期値が”1”でそれを”1ずつ足していき”、終了条件が”-1”となっています。<br />
”1”からどれだけ”1”を足しても”-1”にはなりません。<br />
<br />
<br />
for ( $i = 0 ; $i < 20 ; $a++ ){<br />
処理;<br />
}<br />
<br />
条件式は合っています。ただループカウンタを間違っているので、終わりません。<br />
”$a”にいくら加算しても”$i”が”20”を超えません。<br />
<br />
<blockquote class="tr_bq">
for ( $a = 0 ; $a < 20 ; $a++ ) {<br />print $a;<br />$a = 0;<br />}</blockquote>
条件式は合っています。ループカウンタも合ってます。<br />
ただ、処理の中で”$a”を毎回初期化してしまうので、いくらやっても終わりません。<br />
次に”WHILE文”の書き方です。<br />
<br />
<blockquote class="tr_bq">
while ( 条件式 ) {<br />処理;<br />}</blockquote>
と書きます。<br />
<br />
<blockquote class="tr_bq">
条件式を満たす間、処理を繰り返す</blockquote>
<br />
という意味です。<br />
あ、言い忘れてました!!条件式は”<a href="http://69lapp.blogspot.com/2011/10/blog-post_7195.html#more">IF文</a>”でのと同じです。<br />
では、どういう時に”FOR文”で、どういう時に”WHILE文”なのか?<br />
ズバリ、<br />
<br />
<blockquote class="tr_bq">
何回かはわからないが、条件を満たす間は処理を繰り返したいとき<br />または、無限ループを意図的に行いたいとき<br />そんなときは、”WHILE文”を使います。</blockquote>
<br />
<br />
あ、”WHILE文”の説明が少ないですね。<br />
”WHILE文”では”FOR文”で言うところの「ループカウンタ」がありません。<br />
なので、処理の中で行います。<br />
<br />
<br />
<blockquote>
<br />$a = 0;<br /> while ( $a == 10 ) {<br />print $a;<br />$a++;<br />}</blockquote>
<br />
初期値を”$a=0”、終了条件を”$a==10”、ループカウンタを”$a++”としていますね。<br />
これだと、”FOR文”とほぼ変わらないですな。<br />
ですが、後述する”BRAKE文”と”WHILE文”を組み合わせると<br />
<br />
<blockquote class="tr_bq">
while ( 1 ) {<br />$i++;<br />if ( $i >= 100 ) {<br />break;<br />}<br />}</blockquote>
これだと、<br />
<br />
<blockquote class="tr_bq">
”$i”の初期値はわからないけど、”$i”が”100”以上になったら終了です。</blockquote>
<br />
という風になります。何回繰り返すかわからないが100で終わり、となります。<br />
では、次は”BRAKE文”です。<br />
勘のいい人や英語がわかる方は、もうおわかりかもですが。。<br />
<br />
<blockquote class="tr_bq">
強制的に、繰り返しを終わらせる</blockquote>
<br />
ということをします。似たものに”CONTINUE文”があり<br />
<br />
<blockquote class="tr_bq">
CONTINUE文以下の処理を行わず、カウンタをプラスしループの頭に戻る</blockquote>
<br />
という処理を行います。<br />
”BRAKE文”は主に”WHILE文”で使われて<br />
”CONTINUE文”は”FOR文”で使われるのかな~と思います。<br />
<br />
<blockquote class="tr_bq">
for ( $i = 0 ; $i <= 10 ; $i++ ) {<br />if ($i ==2 ) continue ;<br />print $i ;<br />}</blockquote>
これは”$i”が”2”の時だけ”print $i ;”を行わないという処理です。<br />
<br />69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-31219947187811425372011-10-25T23:03:00.000+09:002011-10-28T00:05:31.603+09:00もしも。。。<br />
どうも、69と申します。<br />
<br />
<a type="amzn" category="ポピュラー音楽"> ピアノが弾けたなら</a>、ではありません。<br />
もしもし、69さんのお宅ですか?でもありません。<br />
所謂一つの、条件式です。<br />
<br />
<br />
<a name='more'></a><br />
<br />
条件式です。「もしも~なら・・・だ」です。英語にすると”if”ですね。<br />
なのでプログラミングでは”IF文”と言われています。<br />
まず書き方です。<br />
1.<br />
<br />
if ( 条件式 ) {<br />
条件に合った場合の処理;<br />
}<br />
<br />
2.<br />
<br />
if ( 条件式 ) {<br />
条件に合った場合の処理;<br />
} else {<br />
条件に合わなかった場合の処理;<br />
}<br />
<br />
3.<br />
<br />
if ( 条件式1 ) {<br />
条件式1に合った場合の処理;<br />
} else if ( 条件式2 ) {<br />
条件式2に合った場合の処理;<br />
} else if ( 条件式3 ) {<br />
条件式3に合った場合の処理;<br />
} else {<br />
条件に合わなかった場合の処理;<br />
}<br />
<br />
次に条件式の書き方です。<br />
論理演算子を用います。とりあえずは<br />
<br />
==<br />
><br />
<<br />
>=<br />
<=<br />
<br />
位です。例をあげると<br />
<br />
A == B<br />
A < B<br />
A > B<br />
A <= B<br />
A >= B<br />
という使い方で、意味は上から順に<br />
<br />
”AとBが等しい”<br />
”AがBより大きい”<br />
”BがAより大きい”<br />
”AがB以上”<br />
”BがA以上”<br />
です。”以上”と”より大きい”の違いはいいですよね?<br />
また、条件式は”かつ(AND)”や”または(OR)”を使うこともできます。<br />
<br />
A && B<br />
<br />
上は”AかつB”という意味です。<br />
<br />
A || B<br />
<br />
これは”AまたはB”という意味です。”|”という記号は<br />
「Shift」を押しながら「Backspace」のとなりの「¥」を押すことで出てきます。<br />
この辺を聞くと、勉強まじめにやっとけばよかったと後悔します。。<br />
<br />
次は”真と偽”についてです。<br />
<br />
条件式に合う=0以外=真<br />
条件に合わない=0=偽<br />
<br />
と言います。これはフラグというやつで、条件に合うとフラグ(0以外)が立ちます。<br />
<br />
条件に合う=正しい=真実=真=0以外<br />
条件に合わない=偽もの=偽=0<br />
<br />
って考えてます。あんまり変わりませんが。。。<br />
最後は反転についてです。<br />
反転。。。つまり真が偽、偽が真。<br />
方法は<br />
<br />
!<br />
<br />
を使います。<br />
<br />
if ( !( $a % 2 ) ) {<br />
A;<br />
}<br />
<br />
というIF文があるとすると<br />
<br />
$aを2で割った余りが0の時($aが偶数)にAという処理が実行されます。<br />
<br />
分解してみると、まず<br />
<br />
$a % 2<br />
<br />
というのは、$aを2で割った余りの事です。<br />
つまり偶数なら”0”、奇数なら”1”です。<br />
それの反転(!)なので上の結果となります。ややこしや~。<br />
<br />
<br />69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-57319902879426363002011-10-25T21:45:00.002+09:002011-10-25T21:45:42.677+09:00チョイ足しどうも、69と申します。<br />
<br />
今日はちょっと物足りない時にほしい、チョイ足しの方法。<br />
<br />
<br />
<a name='more'></a><br /><br />
おかずの話じゃないです、ごめんなさい。<br />
PHPで<br />
<br />
+1<br />
<br />
する方法です。<br />
フツーに<br />
<br />
$aに1足したものを$aに代入<br />
<br />
を書くと<br />
<br />
<blockquote class="tr_bq">
$a = $a +1;</blockquote>
です。ちょっとカッコよく書くと<br />
<br />
<blockquote class="tr_bq">
++$a;</blockquote>
<br />
です。順序が大事で<br />
<br />
<blockquote class="tr_bq">
$a++;</blockquote>
<br />
と書いてしまうと、意味が違ってしまいます。<br />
上2つの式の意味は”$aに1足したものを$aに代入”です。<br />
下の式は”$aに代入した後に1を足す”という意味です。ちょっと意味不明ですが。。。<br />
下の式を”インクリメント”と言います。<br />
<br />
<blockquote class="tr_bq">
$a = 10;<br />$b = $a++;<br />print $b;</blockquote>
<br />
と<br />
<br />
<blockquote class="tr_bq">
$a = 10;<br />$b = ++$a;<br />print $b;</blockquote>
を実行すると上($a++)の結果は”10”<br />
下(++$a)の結果は”11”となります。<br />
で、よく使うのは上の”$a++”です。<br />
チョイ引きも同じです。<br />
<br />
<blockquote class="tr_bq">
$a--;<br />--$a;</blockquote>
<br />
です。チョイ引き自体あまり使わないそうです。<br />
<br />69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-49995180899040690912011-10-24T23:11:00.002+09:002011-10-24T23:11:32.168+09:00表示方法と四則計算どうも、69と申します。<br />
<br />
今回は表示方法です。<br />
やはり表現って大事です。<br />
自己表現がうまくできない69ですが、PHPの方法はOKです。<br />
<br />
<br />
<a name='more'></a>サクッと行きます。<br />
<br />
表示方法は<br />
<br />
<blockquote>
echo</blockquote>
<br />
や<br />
<br />
<blockquote>
print</blockquote>
<br />
を使います。<br />
<br />
<blockquote>
$a = 10;<br />echo $a;<br />echo "Hello";<br />print $a;<br />print "Hello";</blockquote>
文字列を表示させる場合は”"”ダブルコーテーションでくくります。<br />
つなげたい場合は”.”ドットを使います。<br />
<br />
<blockquote>
$a = 10;<br />$b = "万ドル";<br />print "年収" .$a .$b;</blockquote>
連結されて表示結果は<br />
<br />
年収10万ドル<br />
<br />
となります。うん!2年分!<br />
次は計算の仕方です。<br />
<br />
足し算<br />
<blockquote>
+</blockquote>
<br />
引き算<br />
<blockquote>
-</blockquote>
<br />
掛け算<br />
<blockquote>
*</blockquote>
<br />
割り算<br />
<blockquote>
/</blockquote>
<br />
余り計算<br />
<blockquote>
%</blockquote>
<br />
です。見慣れないのが余り計算ですね。それ以外はフツーの四則計算です。<br />
<br />
<blockquote>
$a = 2;//変数aに2を代入<br />$b = $a + 1;//足し算<br />$c = $a - 1;//引き算<br />$d = $a * 2;//掛け算<br />$e = $a / 2;//割り算<br />$f = $a % 2;//余り</blockquote>
↑の例では、$fには0が格納されています。<br />
2を2で割った余りは0なので。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-18989268070628596242011-10-24T22:40:00.000+09:002011-10-24T22:40:04.395+09:00変数どうも、69と申します。<br />
<br />
前回、<a href="http://69lapp.blogspot.com/2011/10/php_23.html">PHPの基礎</a>ということで書き方とコメントの入れ方を勉強しました。<br />
その続きです。<br />
<br />
<br />
<a name='more'></a><br /><br />
変数ってご存知ですか?<br />
変数。。。<br />
それは<br />
<br />
<blockquote>
<span class="Apple-style-span" style="background-color: white; font-family: 'Hiragino Kaku Gothic Pro', Osaka, Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;"><b>1</b> 数学で、数量を一つの文字で表すとき、一定の範囲にわたって任意の値をとり得る文字。<i>x</i>・<i>y</i>・<i>z</i>を用いることが多い。</span><span class="Apple-style-span" style="background-color: white; font-family: 'Hiragino Kaku Gothic Pro', Osaka, Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;"><b>2</b> 《<span class="original">variable</span>》コンピューターのプログラムで、数値や文字列などのデータを保持する仕組み。または、保持するデータの属性や利用目的に応じて与えられた、固有の文字や名称。保持したデータが適用される範囲により、<a href="http://dictionary.goo.ne.jp/leaf/jn2/236100/m0u/" style="color: #0033cc; zoom: 1;">ローカル変数</a>と<a href="http://dictionary.goo.ne.jp/leaf/jn2/64890/m0u/" style="color: #0033cc; zoom: 1;">グローバル変数</a>に分けられる。</span></blockquote>
<br />
です。これは金田一コウスケのお言葉です。<br />
<br />
<br />
PHPでの変数の書き方は<br />
<br />
<blockquote>
$a</blockquote>
などです。<br />
”$”ダラーの後ろに数字以外から始まる文字列をつけます。<br />
これを変数名と言います。使える文字は”a”~”z”、”A”~”Z”、数字、アンダースコアです。<br />
<br />
変数のイメージは箱です。文字じゃわかりにくいですが。。<br />
<br />
<br />
$aというのは<br />
<br />
「箱にaという名前をつけたもの。」<br />
<br />
そういうイメージです。<br />
ところで、変数とは数値や文字列を保持する仕組みです。<br />
では、どうやって保持させるか?代入という方法を使います。<br />
<br />
<blockquote>
$a = 10;</blockquote>
↑は$aに10を代入するという意味です。<br />
イメージで言うと<br />
<br />
「箱aの中に10をしまう」<br />
<br />
です。わかりました?<br />
<br />
<br />
PHPが他のプログラミング言語に比べて簡単といわれるのは<br />
この変数のところもあるらしいです。<br />
PHPでは「型」というものを意識しなくていいんです。<br />
他ではそうはいかないみたいです。気になったら調べてみてください!69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-86276770037868534572011-10-23T23:03:00.000+09:002011-10-23T23:03:05.752+09:00PHPの基礎どうも、69と申します。<br />
<br />
インストールもできたのでプログラムのほうに移っていこうと思います。<br />
まずは基礎。<br />
基礎って大事ですもんね!<br />
<br />
<br />
<a name='more'></a>ゴムをつけない男はあいさつのできない男と同じ<br />
<br />
まさにそんな感じですね、基礎ができていないってことは。<br />
なので、しっかりと。でも、最初はサラッと。。<br />
<br />
まず、PHPは<br />
<br />
<blockquote>
<?php<br />ここにプログラムを記述<br />?></blockquote>
<br />
<br />
という形をとります。<br />
”<?php”を開始タグといい”?>”を終了タグと言います。<br />
挟まれた部分(”ここにプログラムを記述”の部分)をPHPブロックと言います。<br />
終了タグ”?>”は省略可能です。PHPのみで書かれたファイルは省略が推奨らしいです。<br />
<br />
次は文の書き方です。PHPブロックの中のお話しですね。<br />
文と文の区切りは”;”セミコロンで行います。<br />
なので<br />
<br />
<blockquote>
echo "Hello Mr.69";<br /></blockquote>
という感じです。<br />
ちゃんと書くと<br />
<br />
<blockquote>
<?php<br />echo "Hello Mr.69";<br />?></blockquote>
です。これをブラウザから見れるようにすればOKです。<br />
大体、~.phpってファイル名にしてますね。<br />
でも、HTMLファイルの中にもPHPは記述できるます。<br />
<br />
次はコメントアウトの仕方についてです。<br />
直に長いプログラムを書くようになると思います。その時に困らないように。<br />
3つの方法があります。<br />
1.<br />
<blockquote>
//</blockquote>
<br />
2.<br />
<blockquote>
#</blockquote>
<br />
3.<br />
<blockquote>
/**/</blockquote>
<br />
1と2は一行コメントです。そこから改行するまでか、終了タグまでがコメントアウトされます。<br />
<br />
3はブロックコメントです。”/*”と”*/”で囲まれた部分がコメントアウトされます。<br />
入れ子にはできません。<br />
<br />
<br />
<blockquote>
<?php</blockquote>
<blockquote>
echo "Hello Mr.69"; //ここはコメントアウト</blockquote>
<blockquote>
echo "Hello Mr.69"; #ここはコメントアウト<br />echo "Hello Mr.69";<br />/*<br />ここはコメントアウト<br />ここはコメントアウト<br />*/</blockquote>
<br />
<br />
<blockquote>
?></blockquote>
<div>
こういう感じですね。</div>69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-65860930072956053522011-10-22T15:20:00.000+09:002011-10-22T15:20:40.653+09:00PostgreSQL設定どうも、69と申します。<br />
<br />
ついにPostgreSQL9.0がインストールされたのでデータベース作成をしていきます。<br />
<br />
<br />
<a name='more'></a><br /><br />
まず、rpmでインストールしたのでどこにインストールされたのかわからない。。。<br />
ソースでインストールを行う際は指定できるんですけど、rpmだとできなそう。。。<br />
<br />
というわけで、探しました。<br />
<br />
/bin /usr /sbin<br />
向かいのホーム 路地裏の窓<br />
こんなとこにいるはずもないのに<br />
<br />
・・・で、マニュアルで見っけました!!<br />
やはり困った時のマニュアルですね!<br />
<br />
どこにあったかというと<br />
<br />
/opt<br />
<br />
でした。その中に<br />
<br />
postgres<br />
<br />
というのが有りました。<br />
次に行うのは、データベース格納領域の作成です。<br />
rootユーザで<br />
<br />
mkdir <フォルダ名A><br />
chown postgres:postgres <フォルダ名A><br />
<br />
を実行します。<br />
その次はデータベースの初期化を行います。<br />
postgresユーザでログインして<br />
<br />
(パスが通っていなければフルパス)initdb -D <フォルダ名A><br />
<br />
を実行します。成功すると<フォルダ名A>配下にいろいろファイルなどが作成されます。<br />
<br />
<br />
いや、よくよく確認したらrpm実行した時点で<br />
<br />
/opt/postgres/9.0/<br />
<br />
以下に<br />
<br />
data<br />
<br />
ってフォルダがありました。そしてそれがデータ格納領域でした。<br />
だから、PostgreSQLのサービスが動いていたのか。。。<br />
なので、データ格納領域を別に作りたいって場合以外はrpmでインストールして、<br />
パスさえ覚えておくorパスを通すかすればOKみたいです。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-50318385917069556992011-10-22T01:49:00.002+09:002011-10-22T01:49:27.081+09:00PHPインストール#2どうも、69と申します。<br />
<br />
<a href="http://69lapp.blogspot.com/2011/10/php.html">この時</a>にインストールしたPHPをアンインストールしました。<br />
<br />
yum remove php*<br />
<br />
これでいいはず。で、そのあと、PHP5.3をインストールです。<br />
<br />
<br />
<a name='more'></a>yum list php<br />
<br />
って打つと、phpがつくパッケージ?が見れます。<br />
で、よく見てみると<br />
<br />
php53<br />
<br />
っていうのがあるんですね~<br />
なので、<br />
<br />
yum -y install php53*<br />
<br />
でやっちゃいました。<br />
で、その後<br />
<br />
/etc/php.ini<br />
<br />
を編集します。<br />
<a href="http://tech.hitsug.net/?CentOS%2FPHP%2FPHP5%2F%E8%A8%AD%E5%AE%9A">CentOS/PHP/PHP5/設定 - ひつじ帳</a>を参考にしました。<br />
というか、ここの設定を真似ました。<br />
<br />
意味は後日調べるとして。。<br />
<br /><br /><br /><br /><br />expose_php = On → expose_php = Off<div>
max_execution_time = 30 → max_execution_time = 120</div>
<div>
max_input_time = 60 → max_input_time = 240</div>
<div>
error_reporting = E_ALL → error_reporting = E_ERROR | E_WARNING | E_PARSE | E_NOTICE</div>
<div>
;mbstring.language = Japanese → mbstring.language = Japanes</div>
<div>
;mbstring.internal_encoding = EUC-JP → mbstring.internal_encoding = UTF-8</div>
<div>
;mbstring.http_input = auto → mbstring.http_input = auto</div>
<div>
;mbstring.detect_order = auto → mbstring.detect_order = auto
<br /><br />てなことをしました。そのあとはApacheを再起動します。</div>
<div>
次はドキュメントルートに</div>
<div>
<br /></div>
<div>
phpinfo.php</div>
<div>
<br /></div>
<div>
というファイルを作成し、中身を</div>
<div>
<br /></div>
<div>
<?</div>
<div>
phpinfo();</div>
<div>
?></div>
<div>
<br /></div>
<div>
とします。まず、ドキュメントルートとはなんぞや。。</div>
<div>
簡単に言うと、Apacheからの接続時の頂点のディレクトリっていうのかな?</div>
<div>
そんな感じ。</div>
<div>
<br /></div>
<div>
http://○○.jp/</div>
<div>
<br /></div>
<div>
とブラウザから接続したときに最初にアクセスするのがドキュメントルート。</div>
<div>
で、そこのディレクトリインデックスのページが表示されます。</div>
<div>
デフォルトでは</div>
<div>
<br /></div>
<div>
/var/www/html</div>
<div>
<br /></div>
<div>
がドキュメントルートです。ディレクトリインデックスは</div>
<div>
<br /></div>
<div>
index.html</div>
<div>
<br /></div>
<div>
などです。</div>
<div>
つまり、</div>
<div>
<br /></div>
<div>
/var/www/html/phpinfo.php</div>
<div>
<br /></div>
<div>
というファイルに</div>
<div>
<br /></div>
<div>
<div>
<?</div>
<div>
phpinfo();</div>
<div>
?></div>
</div>
<div>
<br /></div>
<div>
と書いてブラウザから</div>
<div>
<br /></div>
<div>
http://<ApacheサーバのIPアドレス>/phpinfo.php</div>
<div>
<br /></div>
<div>
にアクセスしてPHPのバージョンとかが確認できればOKということです。</div>69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-62190427250441204122011-10-21T00:18:00.001+09:002011-10-21T00:18:59.933+09:00PostgreSQLインストール#3どうも、69と申します。<br />
<br />
異なるバージョンのPostgreSQLをインストールしてしまい、再度インストールを行いました。<br />
<br />
<br />
<a name='more'></a>まずは<br />
<a href="http://www.openscg.org/se/postgresql/packages.jsp">http://www.openscg.org/se/postgresql/packages.jsp</a><br />
からパッケージをダウンロードします。<br />
<br />
自分のPCはWindows7でサーバはVMware Player上のCentOSです。<br />
CentOSはCUIのみでしか使えないようにインストールしてしまったので<br />
<br />
<a href="http://www.gnu.org/s/wget/">wget</a><br />
<br />
を使ってもいいんですけど。。。<br />
Windows7のほうに<a href="http://www.tab2.jp/~winscp/">WinSCP</a>っていうツールを入れてあげると便利です!<br />
それにこれからはファイルをアップロードしなくてはいけない機会が出てくるので。<br />
<br />
<br />
<br />
Postgres Package Archives<div>
<br /></div>
<div>
をクリックすると過去のバージョンもダウンロードできます。</div>
<div>
今回は最新の9.0.5ではなく9.0.4をダウンロードしました。</div>
<div>
<br /></div>
<div>
それをWinSCPでCentOSのほうへコピーします。</div>
<div>
<br /></div>
<div>
次に、今回は古いバージョンを入れてしまったのでそれをアンインストールします。</div>
<div>
<br /></div>
<div>
yum remove postgresql</div>
<div>
<br /></div>
<div>
これでOKでした。</div>
<div>
次に新しいPostgreSQLをインストールします。</div>
<div>
<br /></div>
<div>
cd <RPMファイルをコピーしたディレクトリ></div>
<div>
rpm -ivh postgres-9.0.4-1.i386.openscg.rpm</div>
<div>
/etc/init.d/postgres-9.0-openscg start</div>
<div>
<br /></div>
<div>
を実行してインストールは完了です。</div>
<div>
最後の/etc/init.d/postgres-9.0-openscg startの後に</div>
<div>
色々聞かれますけどエンター空打ちでOKです。</div>69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-51524974357559092512011-10-20T23:08:00.002+09:002011-10-20T23:08:18.640+09:00PostgreSQLインストール#2どうも、69と申します。<br />
<br />
<a href="http://69lapp.blogspot.com/2011/10/postgresql.html#more">この時</a>にPostgreSQLのインストールはRPMがあるから簡単ですね!って言いました。<br />
で、もっと楽しようとしました。<br />
<br />
<br />
<a name='more'></a>結論から言っちゃうと、PostgreSQL8.1をインストールしてしまいました。。<br />
CentOSインストール時にインストールするコンポーネントみたいな項目で<br />
<br />
PostgreSQL<br />
<br />
というのを見つけてしまいました。。<br />
悪魔のささやきでした。。<br />
のってしまいした。。<br />
<br />
それが↑の結果です。RPMからやります。。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-48988894041991709032011-10-20T22:38:00.002+09:002011-10-20T22:38:33.677+09:00Apacheインストールどうも、69と申します。<br />
<br />
前回PHPをインストールしたと申しました。<br />
ということはApacheも入ってなきゃいけないはず。。言い忘れていました。<br />
<br />
<br />
<a name='more'></a><br /><br />
これもまた、楽をしました。<br />
CentOSインストール時に一緒にインストールしてしまいました。<br />
なのでバージョンが2.2.3です。<br />
あ、ちなみにApacheのバージョンの確かめ方は<br />
<br />
#httpd -v<br />
<br />
です。パスが通っていると簡単ですね!<br />
ということで、Apacheはそのまま行きます。<br />
Apacheのバージョンは2.2.3です。69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-10639009937475904762011-10-20T22:25:00.001+09:002011-10-20T22:25:26.065+09:00PHPインストールどうも69と申します。<br />
<br />
前回まで、いろいろセキュリティだなんだかんだやらないとみたいに言ってました。<br />
でも、とりあえず作りたいじゃん!ということでサクッとインストールしちゃいました、PHP。<br /><br />
<br />
<a name='more'></a>あ、そういえば話違いますけど、VMware Playerの4が出ましたね。<br />
Sはつかないみたいですけど。。<br />
<br />
PHPインストールなんですけど。。。<br />
yum使っちゃいました。そしたら、バージョンが5.1.6。<br />
やり直しか。。。<br />
<br />69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0tag:blogger.com,1999:blog-1401122148352149788.post-60023019097914470212011-10-16T22:13:00.002+09:002011-10-16T22:13:38.041+09:00PostgreSQLのインストールどうも、69と申します。<br />
<br />
今日はPostgreSQLについてです。<br />
<a name='more'></a><br /><br />
ずっとできないと思ってました。<br />
最新のRPMはないと思ってました。<br />
<br />
なので、ずっとソースからインストールしていました。<br />
<br />
<br />
でも、ググったら簡単に出てきました!<br />
<a href="http://www.openscg.org/se/postgresql/packages.jsp">http://www.openscg.org/se/postgresql/packages.jsp</a><br />
<br />
<br />
やっぱりRPMが簡単なので、今回は↑からダウンロードしようと思います!69http://www.blogger.com/profile/15922155385220753958noreply@blogger.com0