PHP 排序

  1. 使用 insertentry.php,在資料庫 dywphp 的 tblphp 資料表新增兩筆紀錄。
    [root@kvm3 html]# curl -X POST http://kvm3/insertentry.php \
    -d 'title=moodle&author=rita&submission_date=2023-05-05&add=Y'
    <html>
    <head>
    <title>Add New Record in MariaDB Database</title>
    </head>
    <body>
    Entered data successfully
    </body>
    </html>
    
    [root@kvm3 html]# curl -X POST http://kvm3/insertentry.php \
    -d 'title=podman&author=peter&submission_date=2023-05-02&add=Y'
    <html>
    <head>
    <title>Add New Record in MariaDB Database</title>
    </head>
    <body>
    Entered data successfully
    </body>
    </html>
    
  2. 使用 selectrecord.php 查詢資料庫 dywphp 的資料表 tblphp 有三筆紀錄。
    [root@kvm3 html]# curl -s http://kvm3/selectrecord.php | sed 's/<br> */\n/g'
    Dywphp ID: 2
    Title: python
    Author: dywang
    Submission Date: 2023-04-20
    --------------------------------
    Dywphp ID: 3
    Title: moodle
    Author: rita
    Submission Date: 2023-05-05
    --------------------------------
    Dywphp ID: 4
    Title: podman
    Author: peter
    Submission Date: 2023-05-02
    --------------------------------
    Fetched data successfully
    
  3. 撰寫 sorting.php,查詢變數 $sql 加入 ORDER BY author DESC 條件。
    [root@kvm3 ~]# vim /var/www/html/sorting.php 
    [root@kvm3 ~]# cat /var/www/html/sorting.php 
    <?php
    $dbhost = 'localhost:3306';
    $dbuser = 'root';
    $dbpass = '123qwe';
    $conn = mysqli_connect($dbhost, $dbuser, $dbpass) 
    	or die(mysqli_connect_error().PHP_EOL);
    mysqli_select_db( $conn, 'dywphp' )
    	or die('Error: '.mysqli_error($conn).PHP_EOL);
    $sql = "select id, title, author,submission_date from tblphp order by author desc";
    $retval = mysqli_query( $conn, $sql )
    	or die('Error: '.mysqli_error($conn).PHP_EOL);
    while($row = mysqli_fetch_array($retval, MYSQLI_ASSOC)) {
        echo "Dywphp ID: {$row['id']} <br> ".
             "Title: {$row['title']} <br> ".
             "Author: {$row['author']} <br> ".
             "Submission Date: {$row['submission_date']} <br> ".
             "--------------------------------<br>";
    }
    mysqli_free_result($retval);
    echo "Fetched data successfully\n";
    mysqli_close($conn); 
    ?>
    
  4. curl 連上網址 http://kvm3/sorting.php,管線處理將 html 換行標籤 <br> 改成 shell 的換行符號 \n,網頁上以 author 降序列出資料表 tblphp 所有紀錄。
    [root@kvm3 html]# curl -s http://kvm3/sorting.php | sed 's/<br> */\n/g'
    Dywphp ID :3
    Title: moodle
    Author: rita
    Submission Date : 2023-05-05
    --------------------------------
    Dywphp ID :4
    Title: podman
    Author: peter
    Submission Date : 2023-05-02
    --------------------------------
    Dywphp ID :2
    Title: python
    Author: dywang
    Submission Date : 2023-04-20
    --------------------------------
    Fetched data successfully