register_globals的值可以設定為:On或Off,我們舉一段程式碼來分別描述它們的不同。 代碼: 複製程式碼 程式碼如下: 當register_globals=Off的時候,下一個程式接收的時候應該用$_GET['user_name']和$_GET['user_pass']來接受傳遞過來的值。 (註:當 的method屬性為post的時候應該用$_POST['user_name']和$_POST['user_pass']) 當register_globals=On的時候,下一個程式可以直接使用$user_name和$user_pass來接受值。 顧名思義,register_globals的意思就是註冊為全域變量,所以當On的時候,傳遞過來的值會被直接的註冊為全域變數直接使用,而Off的時候,我們需要到特定的數組裡去得到它。所以,碰到上邊那些無法得到值的問題的朋友應該先檢查一下你的register_globals的設定和你獲取值的方法是否匹配。 (查看可以用phpinfo()函數或直接查看php.ini) 下面來看看這裡有什麼錯誤? 看看下面的這段PHP腳本,它用來在輸入的用戶名及口令正確時授權訪問一個Web頁面: 複製程式碼 程式碼如下: // 檢查使用者名稱及口令if (🎜>if $username == 'kevin' and $password == 'secret')$authorized = true;?>Please enter your username and password: Username: Password: 上面的程式碼中存在的問題是你可以很容易地獲得訪問的權力,而不需要提供正確的用戶名和口令。只在要你的瀏覽器的網址列的最後加上?authorized=1。因為PHP會自動地為每一個提交的值建立一個變數-- 不論是來自動一個提交的表單、URL查詢字串還是一個cookie -- 這會將$authorized設定為1,這樣一個未授權的使用者也可以突破安全限制。 http://www.bkjia.com/PHPjc/313566.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/313566.htmlTechArticleregister_globals的值可以設定為:On或Off,我們舉一段程式來分別描述它們的不同。 代碼: 複製代碼 代碼如下: form name="frmTest" id="frmTest" act...