iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 6
1

這次需要兩位 PHP 舞者,為我們表演這段華爾滋。/images/emoticon/emoticon42.gif

第一位登場的是 PHP 表單

<body>
    <form id="form" action="postget_request.php" method="post" name="form">
        <p>姓名:
        <label for ="username"></label>
        <input name="username" type="text" />
        </p>

        <p>性別:
        <label for ="sex"></label>
        <input name="sex" type="radio" value="男生" />
        男生
        <label for ="sex"></label>
        <input name="sex" type="radio" value="女生" />
        女生
        </p>

        <P>
            <input name="submit" id="button" type="submit" value="送出" />
        </P>
    </form>
</body>

  • 存檔成form_1.php到資料夾xampp\htdocs
  • [action]是什麼?
    改變網址,以我們這專案來說,就是表單頁面變成輸出頁面

The URI of a program that processes the form information. This value can be overridden by a formaction attribute on a , or element.

第二位登場的是PHP輸出頁面

<body>
    <?php
        echo $_POST['username'].",".$_POST['sex'];
        echo $_GET['username'].",".$_GET['sex'];
        echo $_REQUEST['username'].",".$_REQUEST['sex'];
    ?>
</body>    

  • 存檔成postget_request.php到資料夾xampp\htdocs
    • 然後在http://localhost/form_1.php 開啟

執行發生警告,來找出原因吧

  • Notice: Undefined index: ,警告:未知目錄
  • 將method="post",改成method="get"試試

建議在無痕瀏覽模式開啟,改完程式碼後重開新無痕視窗,
避免chrome暫存資料,無法正確顯示結果。

原因: POST GET REQUEST差異

POST GET REQUEST
只能收POST 只能收GET 可以收post、get

何時使用method =“ get”?

  • 在HTML表單中使用method =“ get”時,所有的變量名和值都會顯示在URL中。
    • 註釋:所以在發送密碼或其他敏感信息時,不應該使用這個方法!
  • 然而,正因為變量顯示在URL中,因此可以在書籤中收藏該頁面。在某些情況下,這是很有用的。
    • 註釋: HTTP GET方法不適合大型的變量值。它的值是不能超過2000個Character字元的。

何時使用method =“ post”?

  • POST方法的表單發送的信息,對任何人都是不可見的,並且對發送信息的量也沒有限制。
  • 然而,由於變量不顯示在URL中,所以無法把頁面加入書籤。

為什麼用localhot而不是用127.0.0.1

  • localhot:是不經網絡卡傳輸的,它不受網路防火牆和網絡卡相關的的限制。
  • 127.0.0.1:是通過網絡卡傳輸的,它依賴網絡卡,並受到網路防火牆和網絡卡相關的限制。

總結:

今日兩位 PHP 舞者,跳著華爾滋,十分地有默契,傳送接收呈現,行雲流水,讓我們給兩位PHP舞者熱烈的掌聲!
感謝你觀看 30 天翻玩動態網站系列,我們明天見。


上一篇
Day05 PHP 進化 判斷條件與時間函數
下一篇
Day07 揭開藏鏡人 SQL 資料庫神秘面紗
系列文
30天翻玩動態網站-會員需驗證才能看到部落格文章 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言