0

我最近了解到register_globalsphp.ini文件中关闭更安全。

但是,当使用以下脚本时,它在register_globals打开和register_globals关闭时工作我Error 403 Access Forbidden在按下提交按钮后收到一条消息:

    <?php 
         if (isset($_POST['user']))
         {
             $user = $_POST['user'];
         }
         if (isset($_POST['address']))
         {
             $address = $_POST["address"];
        }

        if (isset($_POST['submit']))
        {
              echo "Welcome, ".$user. ". <br>";
              echo "Your address is: ".$address;
        }

    ?>

    <html>
    <head>
    <title>Personal Info</title>
    </head>
    <body>
    <form method="post" action = "<?php echo $PHP_SELF;?>">
       Name: <input type="text" name="user">
       <br>
       Address: <input type="text" name="address">
       <br>
       <input type="submit" value="submit" name="submit">
    </form>
    </body>
    </html>

我做错了什么,只有在register_globals关闭时才会收到此错误消息。我在 Windows XP 上,我使用的是 Xampp 1.7.4,而且我是菜鸟 :)

4

3 回答 3

0

$PHP_SELF必须是$_SERVER['PHP_SELF']

于 2011-05-26T19:16:55.647 回答
0

改为使用$_SERVER['PHP_SELF']。的存在$PHP_SELF是 register_globals 开启的副作用。

于 2011-05-26T19:17:55.513 回答
0

$PHP_SELF 取决于 register_globals。利用

$_SERVER['PHP_SELF']

反而。

于 2011-05-26T19:18:04.233 回答