Linux 伺服器系統管理第十章 建立企業網站  上一頁    下一頁

10-7 驗證 LAMP 伺服器功能

內容:

  • 10-7-1 完成 LAMP 環境

  • 10-7-2 PHP+MySQL 程式範例

  • 10-7-3 匯入資料庫 - course_db

  • 10-7-4 上傳 PHP 程式

  • 10-7-5 執行資料庫程式

10-7-1 完成 LAMP 環境

吾人利用一只已建立的資料庫 (course_db) 導入 LAMP 伺服器中,再驗證其功能如何。但必須先完成下列事項:

(1)  已安裝完成 CentOS 7 Linux 作業系統

(2)  再完成 LAMP 伺器安裝設定:包含 vsftpdhttpdMariradb 伺服器;

(3)  下載資料庫 course_db、以及 PHP 程式(由首頁上下載),包含有:(需解壓縮)

1.        MySQL 資料庫course_db.sql

2.        PHP 存取程式Ex7_3-form.phpPHP 回應程式:Ex7_3-action.php,須將兩程式上傳到帳戶 user01 家目錄下 public_html 子目錄下。

3.        備註:程式功能請自行閱讀,或參考 資料庫程式設計翻轉電子書。

10-7-2 PHP+MySQL 程式範例

(A) 系統功能:Ex7_3

學務處需要一個用老師姓名,可以查詢到他這學期所開的課,期望查詢網頁如下:(course_db 資料庫上查詢)

執行網頁的結果如下:

PHP+MySQL 資料庫查詢程式的運作程序如下:首先要一只 PHP 表單程式(Ex7_3-form.php)讓使用者輸入所欲查詢的資料如何,當它接收完此資料後,再傳送給 PHP 處理程式(Ex7_3-action.php),由此程式查詢後列印出來。

(C) 查詢表單網頁:Ex7_3-form.php

系統要求利用下拉式來選擇老師,則查詢網頁開啟 teachers 資料表,並選取教師姓名,如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

<!filename: Ex7_3-form.php>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>查詢教師開課課程</title>

</head>

<body>

<?php

        $select_db = mysqli_connect("localhost", "root", "123456", "course_db")

                or die("MySQL 伺服器連結失敗 <br>");

        $sql_query = "select name

                from teachers";

  

        $select_db->set_charset("UTF8");

        $result = mysqli_query($select_db, $sql_query);

?>

   <p><font size="3"> 查詢老師開課資料 </font></p>

   <form name="表單" method="post" action="Ex7_3-action.php">

              

<?php

           echo "選擇老師姓名:";

           echo "<select name='name'>";

           while($row=mysqli_fetch_row($result)) {

               echo "<option> $row[0]</option><BR>";

            }

            echo "</select>";

            echo "<BR><BR>";  

            mysqli_close($db_link);

?>

      <input type="submit" value="送出">

   </form>

</body>

</html>

(D) 執行結果網頁:Ex7_3-action.php

接收到教師姓名後,則利用合併查詢方法,查詢該教師所開的課,如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

<!filename: Ex7_3-action.php>

<?php

        $name = $_POST["name"];       

        $select_db = mysqli_connect("localhost", "root", "123456", "course_db")

                or die("MySQL 伺服器連結失敗 <br>");

        $sql_query = "select C.course_ID, C.course_name, C.required, C.credit

                      from teachers as A, open_course as B, all_course as C

                      where A.name = '$name'

                      and A.teacher_ID = B.teacher_ID

                      And B.course_ID = C.course_ID";

       

        $select_db->set_charset("UTF8");

        $result = mysqli_query($select_db, $sql_query);

       

        echo "<table border = '2'><tr align='center'>";

        for($i=0; $i<mysqli_num_fields($result); $i++) {

                echo "<td>".mysqli_fetch_field($result, $i)->name."</td>";

        }

        echo "</tr>";

        while($row=mysqli_fetch_row($result)) {

                echo "<tr>";

                for($j=0; $j<mysqli_num_fields($result); $j++) {

                        echo "<td>$row[$j]</td>";

                }

                echo "<tr/>";

        }

        mysqli_close($db_link);

?>

10-7-3 匯入資料庫 - course_db

(A) 建立 course_db 資料庫

MySQL 系統上建立 course_db 資料庫(可用其它名稱,但程式需配合改變)。如下:

(B) 匯入 course_db 資料庫

選擇已建立的 course_db,再由選單上選擇匯入,並選取檔案如下:

查閱資料內容,可發現該資料庫有 7 個資料表,如下:

10-7-4 上傳 PHP 程式

將兩個 PHP 程式上傳到 user01 個人網站上(public_html 目錄下),如下:(利用 FileZilla Client上傳)

10-7-5 執行資料庫程式

由瀏覽器上執行 http://IP/~user01/Ex7_3-form.php (查詢某位老師這學期開了那些課程),結果如下:

查詢結果如下:

翻轉工作室:粘添壽

 

Linux 伺服器系統管理 - CentOS:

 

 

 

翻轉電子書系列: