提交表单时如何打印所有 POST 结果? [复制]

Posted

技术标签:

【中文标题】提交表单时如何打印所有 POST 结果? [复制]【英文标题】:How do I print all POST results when a form is submitted? [duplicate] 【发布时间】:2012-03-09 02:47:50 【问题描述】:

我需要查看所有提交到服务器进行测试的POST 结果。

什么是我如何创建一个新文件来提交的示例,该文件将回显与该表单一起提交的所有字段?

它是动态的,因此某些字段的名称/ID 可能为field1, field2, field3 等。

【问题讨论】:

建议的一些解决方案看起来不整洁的原因是因为它们依赖于换行符,但在浏览器中被解释为 html。只需在 var_dump() 或 print_r() 之前添加 echo "<pre>"; 【参考方案1】:

所有值都存储在$_POST 集合中

<?php print_r($_POST); ?>

或者,如果您想要更有趣、更易于阅读的内容,请使用 foreach 循环遍历 $_POST 集合并打印值。

<table>
<?php 


    foreach ($_POST as $key => $value) 
        echo "<tr>";
        echo "<td>";
        echo $key;
        echo "</td>";
        echo "<td>";
        echo $value;
        echo "</td>";
        echo "</tr>";
    


?>
</table>

【讨论】:

不应该是 $_REQUEST 吗? (如果不是 $_POST) 意味着它是 $_POST。我抓取了一个用于 $_SERVER 变量的类似脚本,但未能进行那个小编辑。谢谢。 可能值得在答案下突出显示 kb. 的评论,关于简单地将 var_dumpprint_r 输出放在 HTML &lt;pre&gt; 标签之间。【参考方案2】:

你可以试试var_dump:

var_dump($_POST)

【讨论】:

这行得通,但有没有让它更整洁一点?例如页面下方的列表仅显示“字段 ID:值”? @Zoolander 查看 kb. 在答案下的评论,关于简单地将 var_dumpprint_r 输出放在 HTML &lt;pre&gt; 标签之间。 var_dump 更短更清晰【参考方案3】:

简单地说:

<?php
    print_r($_POST);

    //Or:
    foreach ($_POST as $key => $value)
        echo $key.'='.$value.'<br />';
?>

【讨论】:

【参考方案4】:

你的意思可能是这样的:

<?php
    $output = var_export($_POST, true);
    error_log($output, 0, "/path/to/file.log");
?>

【讨论】:

【参考方案5】:

你可以使用像这样简单的东西

<?php
   print_r($_POST);
?>

这会让它更容易看到:

<?php
   echo str_replace('  ', '&nbsp; ', nl2br(print_r($_POST, true)));
?>

【讨论】:

【参考方案6】:

你绝对可以使用var_dump,但你提到你是前端开发的。我相信您会知道这一点,但提醒一下,请使用 Firefox 的 Firebug 或 Chrome 的 / Internet Explorer 的开发人员工具并检查帖子。帖子通过听众,您也应该可以从那里检查它。

【讨论】:

var_dump($_POST) 没有为我做任何事情 - 不像 $_GET。【参考方案7】:
if (! function_exists('d'))

    // Debugger
    function d($var, $exit = 0)
    
        // Only output on localhost
        if ($_SERVER['HTTP_HOST'] != 'localhost')
        
            return;
        

        echo "\n[degug_output_BEGIN]<pre>\n";
        echo var_export($var, 1);
        echo "\n</pre>[degug_output_END]\n";

        if ($exit)
            exit;
    


// Call:
d($_POST);

奖励:检查debug_backtrace() 也将跟踪添加到您的调试中。

【讨论】:

以上是关于提交表单时如何打印所有 POST 结果? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

表单提交打开新选项卡/窗口? [复制]

如何检查请求POST中是不是存在值? [复制]

html如何向php中post数据

用python复制form表单的一个问题?

仅当使用引导程序填写所有必需的 attr 字段时,如何提交表单?

防止表单提交字段输入键keydown? [复制]