2016-02-14 52 views
1

嗨,我有$ _POST方法的问题。

这是我的代码:

<form method="post" action="index.php"> 
    <input type="text"name="tb"/> 
    <input type="submit" value="Send"/> 
</form> 

<?php 
    echo $_POST['tb']; 
?> 

,这是错误消息:

推荐使用:自动填充$ HTTP_RAW_POST_DATA被弃用 并会在将来的版本中删除。要避免此警告,请在php.ini中将 'always_populate_raw_post_data'设置为'-1',并改为使用 php://输入流。在未知在线0警告:无法 修改标题信息 - 头已经在未知发送在线0

我用PhpStorm编辑和php-7.0.3-NTS-Win32的VCl 4-86。 我试图改变我的php.ini,但它不工作。

+0

是什么'的var_dump($ _ POST)的输出'后你发送的形式? – Roman

+0

您是否使用php 5.6或更高版本? – devpro

回答

1

尝试在type="text"name="tb"

<form method="post" action=""> 
<input type="text" name="tb"/> 
<input type="submit" value="Send"/> 
</form> 

附加空间,并了解HTML标签之间的这种
warning-about-http-raw-post-data-being-deprecated
后变化php.ini重启web服务

+0

还没有工作! – kkaka

+0

编辑我的帖子...再试一次 – paranoid

0
<form method="post" action="index.php"> 
    <input type="text" name="tb"/> 
    <input type="submit" value="Send"/> 
</form> 

<?php 
    echo $_POST['tb']; 
? 

增加空间属性

+0

也没用! – kkaka

1
  1. 你忘了给空间。
  2. 还检查变量的存在。

    <form method="post" action="index.php"> 
        <input type="text" name="tb"/> 
        <input type="submit" value="Send"/> 
    </form> 
    
    <?php 
    echo $tb = isset($_POST['tb']) ? $_POST['tb'] : ""; 
        ?> 
    
+0

$ _get方法它运行良好,但$ _POST不起作用。 我无法理解此错误消息:弃用:自动填充$ HTTP_RAW_POST_DATA已弃用,将在未来的版本中删除。为避免此警告,在php.ini中将'always_populate_raw_post_data'设置为'-1',并改为使用php://输入流。在未知的第0行警告:不能修改标题信息 - 标题已在未知的行0发送 – kkaka

+0

@kkaka你是否试图用我给定的答案替换所有的代码?在index.php – C2486

+0

在你的php中设置always_populate_raw_post_data = -1。ini,然后尝试 – C2486

0

进入设置>构建,执行,部署>部署:

  • 添加本地或安装文件夹
  • 使用的根文件夹
  • 下的 '映射' 完成部署路径(即http://localhost/root文件夹
  • 和web路径(即/根文件夹

工作正常这里