アプリ版:「スタンプのみでお礼する」機能のリリースについて

以下は「書籍(SqlとPHP一体化の教科書)」にある PHP のプログラムです。

それで ❷挿入用スクリプト「kantan_insert.php」にあります
$re=$s->query("SELECT * FROM tbk ORDER BY bang");
は「SELECT文の発行」と書かれいるだけで「解説」見当たりません?
 なので 私的には 「グレーゾーン」です。

「具体的」に言葉で「ビジュアル化」した場合どんな解説になるのか?
知りたいです。 

 大体の見当はつくのですが!
 [❷-1]文である「Sql」に対して「ORDER BY」で「表示項目」の「優先順位」
 カラム「bang(数値)」優先で「昇順並び替え」を行い それを
 配列関連の while($kekka=$re->fetch()){に対して命じているのかな?
 でしょうか?
 よろしくお願いいたします。

❷挿入用スクリプト「kantan_insert.php」
-----------------------------------
  <?php
$s=new PDO("mysql:host=localhost;dbname=db1","root","root");
$a1_d=$_POST["a1"]; ▶ ["a1"] ▶「西沢」
$a2_d=$_POST["a2"]; ▶ ["a2"] ▶「私的にSQLって・・・」
[❷-1]$s->query("INSERT INTO tbk (nama,mess) VALUES ('$a1_d','$a2_d')");
$re=$s->query("SELECT * FROM tbk ORDER BY bang");
while($kekka=$re->fetch()){
print $kekka[0];
print " : ";
print $kekka[1];
print " : ";
print $kekka[2];
print "<br>";
}
print "<br><a href='kantan.html'>トップメニューに戻ります</a>";
?>

A 回答 (1件)

> 「SELECT文の発行」と書かれいるだけで「解説」見当たりません?


SELECT文を発行しているだけです。
指示されたSQLを制御するのはPHPではなくRDBMSの責任範疇です。
PHPやRBDMS外からの操作はSQL文を生成し、RDBMSに指示することになります。
その指示を、発行と呼びます。
RDBMSは、その外部から指示されたSQL文を入力として受け付け、制御を行います。

> 「具体的」に言葉で「ビジュアル化」した場合どんな解説になるのか?
あなたの言う「ビジュアル化」の意味が分かりませんが、下記で伝わるでしょうか。

1.❷-1でtbkテーブルにレコードを1件登録しています。
2.$re=$s->query("SELECT * FROM tbk ORDER BY bang");で
  tbkテーブルの全レコードをbangの昇順で得るためのSQLを発行しています。
3.while($kekka=$re->fetch()){で
  2.で発行されたSQLの結果を1件ずつ処理しています。
    • good
    • 1
この回答へのお礼

とても分かりやすいご回答いただきまして、ありがとうございました。
 考え方として RDBMS 対する手続き を やっている
と考えたほうが 分かりやすいですね。
 
 データの流れが分かりました。

今後とも宜しくお願い致します。

お礼日時:2022/02/02 05:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!