mysql
1. While ループ
このレッスンでは、さらに深く掘り下げて、PHP と MySQL を使用して、いくつかのシンプルで便利なページを作成します。昨日作成したデータベースから始めて、データベース内のデータを表示しますが、少し磨きをかけます。
まず、次のコードを使用してデータベースの内容をクエリします。
名前 | 役職 | /tr>n";
%s %s | %s | n", $myrow[1], $myrow[2], $myrow[3]);
名前< td> | アドレス |
%s %s | %s tr>n", $myrow["first"], $myrow["last"], $myrow["address"]); } while ($myrow = mysql_fetch_array($result)); echo " < /table>n"; } else { echo "申し訳ありません、レコードが見つかりません! "; } ?> このプログラムにはたくさんの新しいコンテンツが含まれています, しかし、すべては非常に簡単です。 1 つ目は mysql_fetch_array() 関数です。この関数は mysql_fetch_row() に非常に似ていますが、1 つの違いがあります。この関数を使用すると、$myrow["first"] などの配列添字の代わりにフィールド名を通じて返されるフィールドにアクセスできます。このようにして、多くの労力を節約できます。さらに、do/while ループと if-else 条件文がプログラムに追加されます。 if-else条件文の意味は、$myrow変数へのレコードの割り当てが成功した場合は続行し、そうでない場合はelse部分にジャンプしてそこで命令を実行するということです。 do/while ループは、前のページで使用した while() ループのバリエーションです。 do/while を使用する必要がある理由は、元の if ステートメントで、クエリによって返された最初のレコードを変数 $myrow に割り当てているためです。この時点で一般的な while ループ (たとえば while ($myrow = mysql_fetch_row($result))) を実行すると、2 番目のレコードが $myrow に割り当てられ、最初のレコードはフラッシュされます。 while ループを使用すると、ループ本体を 1 回実行してからループ条件を決定できるため、クエリ結果にレコードがない場合でも、プログラムが実行されます。 else{} 部分のプログラムのこの部分の実行を確認したい場合は、SQL ステートメントを SELECT * FROM 従業員 WHERE id=6 に変更するか、他の形式に変更して、この部分にレコードが存在しないようにします。 次に、ループ if-else コードを拡張してページのコンテンツを充実させましょう ループ ステートメントの使用方法を学びました。これはより実践的な例ですが、その前に、Web フォーム、クエリ パラメータ文字列、およびフォームの GET メソッドと POST メソッドの処理方法を理解しておく必要があります。これについては、少し前の記事「コンテンツ」で説明しました。この部分では、その記事を読むことができます ここで、クエリ パラメータ文字列を処理する必要があります。ご存知のとおり、パラメータの内容をクエリ パラメータ文字列に書き込む方法は 3 つあります。 2 つ目は、ブラウザのアドレス バーに URL を入力するときにクエリ パラメータを直接追加する方法で、3 つ目は、Web ページのハイパーリンクにクエリ パラメータ文字列を埋め込んで、リンクの内容をスーパーリンクにする方法です。次のように: . ここでは最後の方法を使用します 最初に、従業員をリストするデータベースを再度クエリします。次のプログラムを見てください。そのほとんどはすでに馴染みのあるものです。 ); if ($myrow = mysql_fetch_array($result)) { do { printf("%s %s n", $PATH_INFO, $myrow["id"], $myrow["first "], $myrow["last"]); } while ($myrow = mysql_fetch_array($result)); } else { echo 「申し訳ありませんが、記録が見つかりません。 "; } ?> |
すべての引用符の前にはバックスラッシュがあります。このバックスラッシュは、次の文字をプログラム コードとして扱うのではなく直接表示するように PHP に指示します。また、の使用法にも注意してください。使用されるプログラム内の変数 $PATH_INFO は、プログラム自体でアクセスでき、プログラム自体の名前とディレクトリの場所を保存するために使用されます。これは、$ を使用してプログラム自体を呼び出すためです。 PATH_INFO を使用すると、プログラムが移動された場合でも、このプログラムが他のディレクトリにある場合や、先ほど述べたように、によって生成された Web ページに含まれるハイパーリンクが正しく呼び出されることを確認できます。プログラムはプログラム自体を再度呼び出します。呼び出し時に、クエリ パラメータ文字列に「名前 = 値」などのペア形式が含まれていることを PHP が認識すると、変数と変数名が自動的に生成されます。この機能により、プログラムが初めて実行されるか 2 回目に実行されるかを判断できます。この変数は存在しますか?
この質問に対する答えが分かれば、プログラムを 2 回目に呼び出すときにいくつかの異なる結果を表示できます: