| PHPとPostgreSQLを利用したWEBシステムの開発例を掲載していきます。腕時計 販売サイト my-watch.biz | |||||||||
| トップに戻ります ●0-このサイトについて 0_01-運用・製作者について 0_02-このサイトの対象 |
上のコードを全て貼り付けて、ただし全角がスペースで使っていますのでタブに変更して下さい。 そして実行して下さい。 この画面が出れば成功です。 ![]()
「pg_connect関数でホストはローカルホスト、データベースはkaden_hanbaiでユーザーはpostgresで接続して内容を変数$conに代入します。」と、なります。 変 数 まず変数とは、 数値や文字列、その他のデータを格納できるものです。初めに「$」が頭に来ます、名称は自由に付けられます。 $name = 1; 上の式は「変数 $name に1を代入する」の意味です。右から左へ1が動いて$nameに入る、というイメージを持って下さい。 数式の「$nameは1に等しい」という意味ではありません。その場合は、 $name == 1; と、なります。 行の終わり 一番後ろに「;」セミコロンが付いていますが、行の終わりを表しています。日本語の「。」みたいなものですね。必ず明示して下さい。あらゆる行の後ろに付いているはずです。 関 数 日本語でいけば「動詞」のようなものです。関数そのものを説明すると分かり難いので「ドアを開ける」という動詞で説明します。 ドアを開けるにはカギが必要です。これをある約束で書きます。 ドアを開ける(カギ) とします。もし2つ施錠されていたら。ドアを開ける(カギ1、カギ2) みたいな感じですね。 これとほぼ同じです。この基本形は関数全て同じです。 動詞はすごくたくさんありますよね。関数もたくさんあります。 pg_connect ( "host='localhost' dbname='kaden_hanbai' user='postgres'" ); これは、 pg_connect ( "host='ホスト名' dbname='データベース名' user='ユーザー名'" ); です。 ダブルクォーテーション "host='ホスト名' dbname='データベース名' user='ユーザー名'" 上記のコードは「"」で囲まれています。 「"」これをダブルクォーテーション、またはダブルクォートと呼びます。 先の変数での代入で、 $name = 1; は1をダブルクォーテーションで囲む必要はありません。 それはPHPが数値1を知っているからです。前もって知らないと計算もできませんよね。 では普通の名称などでは、どうでしょう。 $name = 田中; これはエラーになります。 PHPは前もって「田中」という意味を定義していません。ですから。 $name = "田中"; と、なります。ダブルクォーテーションで囲むことを「クォートする」という俗語で言ったりします。 シングルクォーテーション 「'」をシングルクォーテーション、シングルクォートなどと呼びます。 先の、 $name = "田中"; は、 $name = '田中'; でもOKです。 クォートに関しては後でもう少し詳しく述べます。 漢字コード
pg_set_client_encodingは関数です。関数の説明したものと同じ形式であることを確認して下さい。 意味は「データベースから取得された変数$conを全てSJISに変換する。」となります。 PostgreSQLのデフォルトの漢字コードは「euc-jp」です。 「漢字コード」という名称を初めて聞いた方もいるかもしれないので説明しますと。 コンピュータで漢字には各々コードが割り振られています。 WindowsはSJISですが、UNIX系はeuc-jpです。 国が違えば、言葉も違う、という風に捕らえて下さい。 漢字コードの違いを実感するために、「//」を追加してこの行をコメント化(無効)して下さい。 そして出力した画面を再読み込みして下さい。
下記のように全角部分が化けたはずです。 データが「euc-jp」でそのまま出力されたためです。 確認したらコードを元に戻して下さい。 ![]() 全て「euc-jp」に合わせればブラウザの画面に出すときに変換してくれますからただ見るだけなら問題はありません。わざわざSJISに戻しているのHTMLのコードを読みやすくするためです。 合点がいかない方は、http://www.yahoo.co.jp/ のHTMLのソースを見てください。 ブラウザのメニューの「表示」、「ソース」で見れます。 <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> で宣言されていて、全角文字部分は全部化けているはずてず。 開発中にHTMLの出力を見る時に見通しが良いように、また文字化けを不具合と受け取られないためです。 問い合わせのSQL 次に検索のSQL文です、ダブルクォートに囲まれたSQLを変数$sqlに代入しています。
初めにcse を起動して下さい。 上記の問い合わせ、検索のSQLの基本構文は下記となります。
意味は「テーブル名からカラム名1 , カラム名2 , ・・・・を全て検索せよ」となります。気が付いた方もいるかもしれませんが、「全て」に当てはまる記載はありません。無い場合は、つまり「全て」と成る訳です。 試しに「ORDER BY date_id_c DESC limit 10」の部分を削除してブラウザを実行してみて下さい。 結果を確認すれば、前のと違うのは、 ・10件でなく20件全てが検索されていた。 ・新しいものから順でなく、古いものから検索されていた。 と、なっていたはずです。 次は「limit 10」だけ削除してください。今度は、 ・10件でなく20件全てが検索されていた。 ・前とは違い、ちゃんと新しいものから表示されていた。 と、なるはずです。 まとめると、
「ORDER BY date_id_c DESC」 は「新しいものから順に」という意味です。 「DESC」を削除すると、「古いものから順に」という事になります。削除して試して下さい。 cse の下記のメニューを選択して下さい。 SQLのリファレンスが見れます。 ![]() 下記の選択部分をダブルクリックで開きます。 ![]() 示されたメニユーから「SELECT」を探して下さい。 見つけたらダブルクリックで開きます。 ![]() これがSELECT(検索)に関するSQLのリファレンスです。 ![]() おそらく、演習をほとんどしていないでこれを見ても意味が掴み難いと思います。 ただある程度のSQLが組めるようになっても全てのSQL文は大量にあって全て記憶するのは無理ですからリファレンスで調べることは良くあります。 今、演習した内容が上記にも記載されています、確認しておいて下さい。 戻る |
−− 弊社メイン・サイト −− ホームページ製作、システム開発はMSweb - 大阪 ホームページ製作・作成、システム開発、サーバー構築・保守にはMSwebをご利用下さい 携帯サイト ![]() −− 弊社姉妹サイト −− ホームページ製作 発注企業に理解して欲しい内容 ホームページ発注企業、製作会社向けの内容です。 −− 弊社姉妹サイト −− レンタルサーバー、サーバー構築の情報サイト サーバー構築、レンタルサーバーなどサーバー関連を調べたい方向けの情報サイトです。 −− 弊社姉妹サイト −− ホームページ製作 大阪 | 製作手順の紹介−MSweb ホームページ製作の手順をご紹介しています、デザイン、HTML、スタイルシートなどについて記載しています。 オープンソース・サンプル MSweb OpenPNE 大阪 オープンソースのSNSです。ご興味があり使用されたい方は、 ID「msweb@msweb.biz」、パスワード「gua8hkj3」で管理ページにログインできます。 管理ページ オープンソース・サンプル MSweb ブログ オープンソースのブログです。ご興味があり使用されたい方は、 ID「admin」、パスワード「bd0e86」で管理ページにログインできます。 管理ページ オープンソース・サンプル XOOPS 代表的なCMSのXOOPSです。ご興味があり使用されたい方は、 ユーザ名「msweb」、パスワード「as4g3mz」で管理者でログインできます。 オープンソース・サンプル EC|CUBE(メイン・ページ) EC|CUBE(管理ページ) オープンソースの通販システムです。ご興味があり使用されたい方は、 ID「msweb」、パスワード「fd4upd2」で管理ページにログインできます。 オープンソース・サンプル Joomla(メイン・ページ) Joomla(管理ページ) オープンソースのCMSです。ご興味があり使用されたい方は、 ID「admin」、パスワード「A2gT6B7F」で管理ページにログインできます。 ▼ オープンソース・サンプル SquirrelMail オープンソースのWEBメールのシステムです、OP25Bの影響を受けません。 ▼ オープンソース・サンプル Mailman Mailman(管理ページ) オープンソースの電子メールでの討論やメルマガの配送リストを管理するためのシステムです。 サンプルのため投稿はできません。 |
|||||||
Copyright (c) 2007 MSweb
All Rights Reserved |
|||||||||