How do I print all POST results when a form is sub

2019-01-21 02:58发布

问题:

This question already has an answer here:

  • Print out post values 10 answers

I need to see all of the POST results that are submitted to the server for testing.

What would be an example of how I can create a new file to submit to that will echo out all of the fields which were submitted with that form?

It's dynamic, so some fields may have a name/ID of field1, field2, field3, etc.

回答1:

All the values are stored in the $_POST collection

<?php print_r($_POST); ?>

or if you want something fancier that is easier to read use a foreach loop to loop through the $_POST collection and print the values.

<table>
<?php 


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


?>
</table>


回答2:

You could try var_dump:

var_dump($_POST)


回答3:

Simply:

<?php
    print_r($_POST);

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


回答4:

You could use something as simple as this

<?php
   print_r($_POST);
?>

This would make it a bit more viewable:

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


回答5:

You may mean something like this:

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


回答6:

You can definitely use var_dump, but you mentioned you are in front-end development. I am sure you would know this, but just as a reminder, use Firefox's Firebug or Chrome's / Internet Explorer's developers tool and check for the post. Post goes through hearders, and you should be able to check it from there too.



回答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);

Bonus: Check debug_backtrace() too add tracing to your debugging.



标签: php post echo