人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPとMySQLデータベースを使った掲示板もしくはチャットを作りたいと思っています。
cgiで掲示板を作った事はあります。
まずPHPとMySQLの大まかな概要が知りたいです。例え話でもなんでもいいのでわかりやすく口語で説明お願いします。
あとこれらを用いて掲示板、チャットを作る方法を記したホームページをお願いします。

●質問者: natukage
●カテゴリ:コンピュータ 趣味・スポーツ
✍キーワード:CGI MySQL PHP チャット データベース
○ 状態 :終了
└ 回答数 : 3/4件

▽最新の回答へ

1 ● くいっぱ
●20ポイント

http://php.s3.to/

レッツPHP!

cgi(pearlですか?)で掲示板をつくられたことがあるそうなのでphpの説明は省きますね。

簡単な動作をさせるだけであれば殆ど違いはありません。

cgi版のあれやこれやをphpに直して配布したりしているサイトのソースを見れば、あー、こうやるのかーってのが感覚的にわかるかと思います。


ひらたく言えばPHPもCGIです。

http://dev.mysql.com/doc/mysql/ja/clients.html

MySQL 4.1 リファレンスマニュアル :: 11 MySQL API

で、このような質問がくるということは恐らくDBがお解りになっていないのではないでしょうか?


一般的な掲示板などのcgiがファイルにデータを読み書きするのに対して、mySQLなどのデータベースとよばれるものは、データベース領域にデータを格納します。


DBが何をするかというと、参照、更新、削除をおこなえます。

ひらたく言うと物理ファイルと変わりません。

ただ、検索(参照)されることを前提に構造化されていますので、データの更新や参照などにお作法があるというだけです。SQLというやつですね。


つまり、ひらたーーーく言うと、

PHPがcgi、MySQLがdatファイル。


(* ´?`)。oO(PHPもcgiなんだけどね…)


2 ● くまっぷす
●20ポイント

http://www.amazon.co.jp/exec/obidos/ASIN/4839914397/250-6460413-...

Amazon.co.jp: 速効!図解プログラミングPHP + MySQL―Windows/Linux PHP5対応: 本: ハーシー

実際に何か作るときはこういう参考書を読んでくださいね。

PHPはプログラミング言語(スクリプト言語)で、そうですね、Javascriptは使ったことありますか?あれとほぼ同じようなものです。HTMLの文書の中に埋め込んで使うことができます。

例えば次の一文を埋めておくと

<?php phpinfo(); ?>

PHPで定義された変数の一覧が表示されます。

http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/php_s04.htm

PHP + MySQL 編4 - 問い合わせレコード参照 mysql_query,mysql_fetch_array - SAK Streets

MySQLとPHPの関係は、このPHPで書かれたプログラムからMySQLのデータベース機能を呼び出すことができるということです。

http://www.php-j.com/scripts/bbs/fboard.php

作る方法、ではないですが掲示板プログラムそのもの(F-BOARD)を配布しています。


3 ● redcherry
●20ポイント

http://php.s3.to/man/

PHP マニュアル

お作りになった掲示板を作成した「言語」はPerlなのでしょうか?


PHPはPerlのような動作をさせることも可能なのですが、PHPではHTMLにPHPのスクリプトを「埋め込んだ」ような記述が可能です。

つまり、HTMLのデザインを先に作っておいてその中に「この部分ではこんな動作をさせたい」という制御文を後から埋め込んでいけるわけです。

膨大な制御文が必要な場合は外部に用意したPHPスクリプトを呼び出せば、デザインと制御がすっきりとした形で統合可能となります。

Perlを使ったCGIではそうは行きません。


またPHPではデータベースとの相性がよく、Webページ中にデータベースのクエリ(検索)結果を表示するなんてことがあっさり出来ちゃいます。

http://dev.mysql.com/doc/mysql/ja/

MySQL 4.1 リファレンスマニュアル

「データベース」という概念がわからなければ、掲示板を作成したときに必要だった「投稿文を保存したファイル」を思い出してください。

データベースでは、これらを行単位(つまり1投稿単位。「レコード」と呼びます)で保存することが出来るので、呼び出すときにファイルアクセス時に必要だった「行の読み飛ばし」が不要になります。

また、1行のデータの内容(投稿者、投稿文、投稿日時、削除パスワード、投稿元IPアドレスなど・・・)を項目単位で管理する(この「項目」をカラム、項目を管理するための設計情報をテーブルと呼びます)ことによって、複雑な制御が可能となります。

たとえば、日付で並び替えたり、逆順にしたり・・・などです。


これらを制御するのは「SQL」と呼ばれるデータベース制御言語です。

MySQLのそれは一般的なSQLと大きな差異はなく、他のデータベースの知識は十分に生かせます。


他のデータベースと比べたMySQLの特徴と言えば、検索速度かもしれません。

同様によく使われるPostgreSQL系よりも平均して速いです。

Oracleなどにもひけをとりません。

ただし、排他機構などは不十分だったような記憶があります(これは新しい実装やデータベースの形式によっては色々違ったりします・・・)

http://kmaebashi.com/programmer/bbs_dev/newbbs.html

PHP??MySQL??f?????????/?f?????????

というわけで、PHP+MySQLを使用した掲示板です。


ただし、PHPではメジャーバージョンが変わるとあちこち違ってたりする場合がありますので注意して下さい。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ