2017年10月11日 星期三

網頁間資料的傳遞

網頁間資料的傳遞

PHP設計師都知道,變數在網頁開始載入時誕生,而在網頁載入後死去,
要如何延續變數的生命,就成了每位PHP設計師鑽研的課題

PHP資料的輸入
除了使用「表單」輸入的輔助方式傳遞參數;
也可以在網址後面加上變數(/參數)即可,
程式範例
http://192.168.100.103/sample/ex11-02b.php?name=Hippo&pass=LD
                                             ↖欲傳遞的參數
程式說明
當中可以將「?」看做是一個中斷點,當中的變數(/參數)可以視為:
name=Hippo
&
pass=LD
namepass中間使用「&」來分隔,而假若有其它的變數,則繼續在其後加上「&」符號銜接。

程式範例
讓認證資料隨著網頁旅行(程式範例流程圖)

 














主登入程式ex11-03.php

</span><span style="font-family:細明體">使用者輸入認證資料首頁<span lang="EN-US">


ex11-03b.php">
    請輸入帳號與密碼 :
    帳號 :
    密碼 :
           填好了,請按我">
           重新設定">


顯示畫面(主程式)


檢驗帳號與密碼函式ex11-03a.php












等級1的首頁ex11-03c.php

</span><span style="font-family:細明體">等級<span lang="EN-US">1</span>的首頁<span lang="EN-US">
等級2的首頁ex11-03d.php

</span><span style="font-family:細明體">等級<span lang="EN-US">2</span>的首頁<span lang="EN-US">
密碼輸入錯誤的首頁ex11-03e.php
</span><span style="font-family:細明體">密碼錯誤的網頁<span lang="EN-US">

非會員(查無此人)的首頁ex11-03f.php
</span><span style="font-family:細明體">非會員登入網頁<span lang="EN-US">
  

  


這個程式的缺點:

密碼不夠嚴謹的問題:
由於程式是利用check()的回傳值,來判斷帳號登入的「等級」權限,若試圖在網址欄位裡輸入:
http://localhost/ex11-03c.php?check=1
就可以登入了,因為程式並不需要知道您輸入的帳號與密碼,只要知道關鍵的「變數」名,就可以順利登入了
Check()函式可以採用非整數、字串、或負數來編碼。

帳號、密碼與程式碼放在一起的問題:
因為目前尚未說明如何與資料庫連結、也沒有談到檔案的存取,所以才將帳號、密碼與程式放在一起
稍後介紹檔案相關的函式,透過檔案的存取方式,建立自己的帳號、密碼檔案,就可以解決此問題了


沒有留言:

用頭腦去思考,不要人云亦云才好, 宗教信徒就是依賴與自私心態(求東求西)的人, 光是這點就很容易暴露弱點了, 難怪seafood吃飽飽,哈哈。 續上, 除了依賴與自私心態(兩者都是人性)之外。 另外也有很大一部份的人,是人云亦云的思考邏輯, 所以宗教才能譁眾取寵。