可能是你的PHP设置里register_globals = Off了,你可以修改php.ini里的设置,或用:
<?php
print($_POST["testname"]);
?>

解决方案 »

  1.   

    在php.ini中把register_globals改为On!
      

  2.   

    这是正常现象! GET是请求得到,POST是发送信息.详见HTTP方法.
    所以说GET方法没有POST方法安全.HTTP方法:
    CONNECT  用来和代理服务器通信
    COPY     用来操纵URL,使一个站点和它的内容看起来是来自另一个地方
    DELETE   用来删除URL的内容
    GET      用来装载URL的内容
    LOCK     禁止URL的HTTP模式改变,直到锁释放
    MOVE     COPY 方法的剪切粘贴板,用来删除原来的URL,放到一个新的位置上.
    MKCOL    一下发送多条HTTP命令,而不是一次一条地发送.
    OPTIONS  用来请求包含指定URL的可能的通信方法列表.
    PATCH    用来发送必要的信息,将URL老的内容替换为新版本的.
    POST     用来在应该被添加到站点或网页中的URL中发送信息
    PROPFIND 用来请求特殊URL的全部信息
    PROPPATCH 用来更新URL的属性.
    PUT      发送信息,添加到WEB页面或站点.信息是附加到,而不是嵌入在URL中.
    TRACE    同ping相似,向服务器发送一条请求然后请求满载着路径信息返回到客户端,用于
             诊断目的.
    UNLOCK   用来删除一个锁.
      

  3.   

    如果表单的提交方法为GET 在test.php中用$_GET['testname']
    或旧版PHP中用$HTTP_GET_VARS['testname']得到表单的值.如果表单的提交方法为POST 在test.php中用$_POST['testname'],
    旧版PHP中用$HTTP_POST_VARS['testname']得到表单的值.也可以用$_REQUEST['testname']取值.