mysql|初心者
PHPとMySQLを使いたいのですが、どのようにインストールして実行すればよいですか?シンプルな
PHP-MySQL アプリケーションを動作させるために知っておくべき最も基本的なことは何ですか?
これは基本的なチュートリアルです。変なコードはなく、基本的なものだけです。
もう 1 つ、現在は UNIX マシンに基づいたチュートリアルが多数ありますが、このチュートリアルでは Windows ベースのプラットフォームに焦点を当てます。ただし、多かれ少なかれ Windows 固有の手順が含まれる
インストール部分を除いて、他の部分はすべてのプラットフォームで同じです。
このチュートリアルでは、PHP と MySQL の次の機能を使用して、段階的に小さな Web サイトを構築します。
1. データベースを表示します。
2. データベースのレコードを編集します。データベース;
4. データベース内のレコードを削除します。
MySQLとPHPを同時に学び、一緒に感じていきます。
セクション 1 - 必要なアイテムを集めて構築する
それでは、作業を始めましょう。 PHP-MySQL を開始するには、いくつかの準備が必要です。
1. Web サーバーを実行します。
2. PHP 拡張機能を追加します。
3. MySQL を実行します。
ステップ 1、Web サーバーを取得してインストールします
マシン上で既に Web サーバーが実行されていると仮定しましょう。 Windows には便利な Web サーバー アプリケーション
がいくつかあります。注意すべき点の 1 つは、php/mysql を実行するには、選択した Web サーバーが拡張機能をサポートできる必要があるということです。
Windows にインストールする最も簡単なサーバーの 1 つは OmniHTTPd (http://www.omnicron.ab.ca/httpd/、非常に優れた無料 Web サーバーです。)
サイトから入手したら、ファイルをインストールしますをダブルクリックして、Web サーバーをインストールします。インストール中に [デフォルトを使用] を選択した場合は、インストールが成功すると、インストーラーによって Web サーバーが起動し、新しいアイコンが表示されます。
Windows システム トレイに表示されます
これで、最初のステップは完了です
2 番目のステップは、PHP ディストリビューションをダウンロードしてインストールすることです
PHP Win32 ディストリビューションを入手するのは非常に簡単です。簡単: にアクセスするだけです。 http://www.php.net/download-php.php3 を選択し、最適な
場所を選択します。OmniHTTPd に PHP をインストールするのは非常に簡単です
まず、インストール ファイルをたとえば c に展開します。 :php
ファイル 'php3.ini-dist' を '%WINDOWS' ディレクトリにコピーし、名前を 'php3.ini' (Win95/98 では c:windows、
WinNT/Win2k では c:) に変更します。 winnt)
をクリックして php3.ini ファイルを編集します。
'extension_dir' 設定を PHP インストール ディレクトリ (c:php) または 'php3_*.dll' が保存されているディレクトリに変更します。 PHP の起動時にロードするモジュール。これらのモジュールをロードするには、「extension=php3_*.dll」行のコメントを解除する必要があります (必ず extension=php3_mysql.dll のコメントを解除してください)。このモジュールには追加のライブラリがシステムにインストールされている必要があります。適切に動作させるには、PHP Q&A (http://www.php.net/FAQ.php3) にサポート ライブラリの入手方法の詳細が記載されています:
dl("php_*.dll") を使用してモジュールを動的にロードします。
PHP 拡張ライブラリには「php3_」という接頭辞が付けられています。これにより、PHP 拡張機能とそのサポート ライブラリ間の混乱が防止されます。
次に、システム トレイの青い OmniHTTPd アイコンを右クリックします。 [プロパティ] 項目を選択します。
[Web サーバーのグローバル設定] 項目をクリックします。
[仮想] フィールドに「.php3」と入力し、「実際の」フィールドに「c:phpphp.exe」と入力します。 」フィールドを選択し、「追加」をクリックします。
Mimeタブを選択し、「仮想」に「wwwserver/stdcgi」、「実際」に「.php3」と入力し、「追加」をクリックします。
「OK」をクリックします。
同じフォームで「デフォルトの仮想設定」を選択します。
「サーバー」タブをクリックします。
「デフォルトのインデックス」フィールドに「Index.php3」と入力します。これにより、Web サーバーに、index.php3 ファイルも認識されることが通知されます。
「OK」をクリックします。
はい、もう十分です。 PHP が動作しているかどうかをテストしてみましょう:
index.php3 というテキスト ファイルを作成し、次のテキストを記述します:
echo "I made it!"
ブラウザを起動してそれをポイントします。ローカルホストへ。画面に「できました!」と表示されるはずです。
次に、MySQL を入手してインストールします。
http://www.mysql.com/download_win.html に移動し、MySQL-Win32 ディストリビューションをダウンロードし、zip ファイルを一時ディレクトリに解凍して、セットアップ プログラム (setup. EXE)。
デフォルトの標準インストールを選択した場合、すべての MySQL ファイルは c:mysql ディレクトリにインストールされます。
次に、以下の手順に従って、各手順を正しく実行してください。
いくつかのテストを実行します:
まず、c:mysqlbin にある mysqld-shareware.exe デーモンを実行する必要があります。 dos ウィンドウ
が表示され、数秒後に閉じます。エラー メッセージが表示されない場合は、MySQLd はすでに実行されています。
MySQLを確認したい場合は、c:mysqlbinmysqlを実行してください。 「mysql>」プロンプトが表示されたターミナル ウィンドウが表示されます。なるほど、MySQL サーバーと通信できるようになりました。
パート 2 - MySQL データベースの作成と操作:
まず、使用するデータベースとテーブルを作成する必要があります。データベースの名前は「example」、テーブルの名前は「tbl」で、識別番号、名、姓、および情報のフィールドがあります。 mysql ターミナルを介してデータベースの作成とテーブル定義の作業を完了するには、c:mysqlbinmysql.exe をダブルクリックするか実行するだけです。
MySQL でどのテーブルが定義されているかを確認したい場合は、次のコマンドを使用できます (mysql> はターミナル プロンプトであることに注意してください):
Mysql> show Databases; このコマンドは次の情報を表示します。
+----------+
| データベース |
+---------- -- +
2 rows in set (0.01 sec)
新しいデータベース(例)を定義するには、次のように入力します。
Mysql
Query OK、1 行が影響を受けました (0.17 秒)
素晴らしい、新しいデータベースができました。これで、ライブラリに新しいテーブルを作成できますが、最初に新しい
データベースを選択する必要があります:
使用例;
答えは次のようになります:
データベースが変更されました
次のフィールドを持つテーブルが作成されます:
インデックス番号 - 整数
ユーザー名 - 最大長 30 の文字列
ユーザー姓 - 最大長 50 の文字列
無料情報 - 最大長の文字列
MySQL プロンプトで次のコマンドを入力してテーブルを作成します:
MySQL> create table tbl (idx integer(3), UserName varchar(30), LastName varchar(50), FreeText varchar(100));
答えは次のようになります:
Query OK、影響を受ける行は 0 件 (0.01 秒)
MySQL プロンプトからテーブルを表示するとどうなるかを見てみましょう。次のコマンドを入力します。 show columns from tbl ;
次の結果が得られます:
+----------+--------------+-- --+-----+--------+------+ フィールド | デフォルト | -- ---+--------------+------+-----+----------+------ | varchar(30) | はい | NULL |
+----------+------+-----+----- +----- ----+------+
4 rows in set (0.00 sec)
ここでは、作成したばかりのテーブル「tbl」の内容を確認できます。
それでは、表の内容を見てみましょう。次のコマンドを入力します:
MySQL> select * from tbl;
このコマンドは、テーブル "tbl" 内のすべてのデータを表示するために使用されます。出力は次のようになります:
Empty set (0.07 sec)
この結果が得られる理由は、まだテーブルにデータを挿入していないためです。テーブルにデータを挿入して、次のように入力してみましょう:
MySQL> insert into tblvalues (1,'Rafi','Ton','Just a test');
Query OK、1 行が影響を受けます ( 0.04 秒)
上でわかるように、デフォルトの順序が使用されているため、テーブルに挿入する値は、前にテーブルを定義した順序になります。データの順序を設定できる構文は次のとおりです:
MySQL> insert into tbl (idx,UserName,LastName,FreeText) 値 (1,'Rafi','Ton','Just a test') );
それでは、テーブルの内容をもう一度見てみましょう:
MySQL> select * from tbl;
今回の結果は次のようになります:
+- --- -+----------+----------+----------+
| 姓 | |
+ ------+----------+----------+-------------+ 1 |ラフィ | テストです
+-----+----------+----------+---------- --+
1 row in set (0.00 sec)
これでテーブルの構造と各セルの内容が確認できました。
今度はデータを削除したいと思います。これを実現するには、次のように入力する必要があります:
MySQL> delete from tbl where idx=1 limit 1;
それでは、少し説明してください。 MySQL に、「tbl」テーブルからレコードを削除し、idx フィールド値が 1 のレコードを削除し、
するように指示しています。削除できるレコードは 1 つだけです。削除されるレコードの数を 1 に制限しない場合、idx 1 を持つすべてのレコードが削除されます (この例では
レコードは 1 つだけですが、それでも、これをより明確にしたかっただけです)。
残念ながら、また空のテーブルができてしまったので、もう一度入力してみます:
MySQL> insert into tbl names (1,'Rafi','Ton','Just a test');<クエリは OK、1 行が影響を受けました (0.04 秒)
他にできることは、指定したフィールドの内容を変更し、「update」コマンドを使用することです:
MySQL>update tbl set UserName='Berber' where UserName=' Rafi';
Query OK, 1 row (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
このコマンドは、影響を受けるユーザー名「Rafi」を持つすべてのレコードを検索し、それを「Berber」に変更します。 set 部分と where 部分は異なり、同じである必要があることに注意してください。 1 つのフィールドを検索しても、別のフィールドを変更することができます。さらに、2 つ以上の条件で検索を実行することもできます。
MySQL>update tbl set UserName='Rafi' where UserName='Berber' and LastName='Ton';
クエリ OK、1 行が影響を受けました (0.04 秒)
このクエリは 2 つのフィールドを検索し、変更しましたユーザー名の値。
パート 3 - PHP と MySQL の結合
このパートでは、前に作成した MySQL テーブルを制御するための単純な PHP ベースの Web サイトを構築します。
次のようなサイト構造を構築していきます(HTMLの基本的な知識はすでに知っていると仮定します):
1. フロントエンドでテーブルを表示するためにindex.php3が使用されます
2. にデータを挿入するためにadd.php3が使用されます。 table
3. Modify.php3はテーブル内のレコードを変更するために使用されます
4. del.php3はテーブル内のレコードを削除するために使用されます
まず、データベースを確認します:
以下のスクリプトを見てください。
------------------------------------------------ --------------------------------
Index.php3:
< title>/title>
tbl
からのデータ
mysql_connect() Database への接続の問題");
$query = "select * from tbl";
$result = mysql_db_query("example", $query);
if ($result) {
echo "データベース内に次のエントリが見つかりました:
";
echo "
" ; "; ユーザー名< ;/td> 姓 リクエスト日
while ($r = mysql_fetch_array($result))
{
$idx = $r["idx"];
$user = $r[ "ユーザー名"];
$last = $r["FreeText"];
echo "$idx ;td>$user ; $last
}
echo "
}
{
エコー "データがありません。"
('links.x')> html>------------------------------------------------ --------------------------------
さて、ここでいくつかの手順を説明します:
最初に通常の HTML タグを使用します thml を作成します書類。 HTML から PHP に転送する場合は、 を使用して PHP 部分を開きます。これは、Web サーバーに次のテキストを通常の HTML ではなく PHP 構文として扱うように指示します。 ?> を使用して PHP 部分を終了します。
mysql_connect() コマンドは、PHP に MySQL サーバーへの接続を確立するように指示します。接続が正常に確立された場合、スクリプトは続行されます。失敗した場合は、die コマンド情報「データベースへの接続の問題」が出力されます (mysql_connect およびその他の PHP 関数の詳細については、次のリンクを参照してください)。 http://www.php.net)。
さて、上で説明したように MySQL がインストールされていれば、それで十分です。ただし、プリインストールされた MySQL (
ISP など) を使用している場合は、次のコマンドを使用する必要があります:
mysql_connect (localhost, username, password);
MySQL クエリで実行したいものを $query に設定できます。次に、mysql_db_query コマンドを使用してそれを実行します。
$result = mysql_db_query("example", $query);このとき、「example」はデータベース名、$queryは実行するクエリを表します。
テーブルからすべてのデータを取得するには、MySQL コマンド select を使用します:
$query = "select * from tbl"; 実行が成功した場合、$result の役割を簡単に説明します。この関数はクエリ結果の MySQL 結果識別子を返すか、エラーが発生した場合は false を返します。返されるのは結果ではなく識別子であり、後で必要な情報に変換できます。
ここで、データベースにレコードがあるかどうかを確認し、レコードがある場合は、HTML テーブル構造に従って結果を出力します。
データが存在するかどうかを確認するには、if コマンドと次の構文を使用します:
if (引数) {
"何かをする;"
} else {
"違うことをする
}
このとき「何かをする」は引数=trueの場合に実行したいコマンド、「何か違うことをする」は引数=
falseの場合に実行したいコマンドです。
HTMLテーブル構造を確立するために、echoコマンドを使用していくつかのHTMLタグを出力していることに注意してください。 PHP コマンドからのテキスト出力のみが HTML コンテンツとして扱われます。PHP コマンド自体は HTML コンテンツとして扱われません。
使用するもう 1 つのコマンドは while 命令です。形式は次のとおりです。
while (argument)) {
"something to do"
}
argument=true の場合、while ループが継続的に繰り返されます。 is {} 内の一連の命令です。
ここではwhileループとPHP関数$r=mysql_fetch_array($result)を組み合わせています。この関数は、対応する結果識別子
文字に基づいてレコードを取得し、フィールド名を配列の
キーとして使用して、結果を連想配列 $r に配置します。このスクリプトでは、$r['idx']、$r['UserName']、$r['LastName']、
$r['FreeText'] の配列を取得します。
結果を順序付けされた配列に入れる mysql_fetch_row 関数を使用することもできます。$r[0]、$r[1]、
$r[2]、$r[3] を使用して、対応する値。
これらの機能の詳細については、http://www.php.net をご覧ください。
すべての情報が揃ったので、HTML フォームで出力できます:
echo " $idx $user< mysql_free_result ($result) 関数を使用して、MySQL 接続を解放し、一部のリソースを解放できます。
PHP のもう 1 つの便利な機能は、スクリプトにテキスト ファイルを含めることができることです。再利用可能なコード (他の
他のページへのリンクなど) があると仮定します。 include 関数を使用すると、コードと時間を節約できます。そして、このコードを変更したい場合は、
含まれるファイルの内容を変更するだけで済み、その変更はそのコードを含むすべてのファイルに反映されます。
ここでは、各ページで使用するすべてのリンク メニューを保存する Links.x というテキスト ファイルを作成します。
include の構文は次のとおりです:
Include ('include_text_file'); これで、?> が使用できるようになります。 PHP 部分を閉じ、HTML ページを