checking and displaying POST variables

jazzIIIlove
jazzIIIlove used Ask the Experts™
on
Hi;

I want to simply display my post variables in a smart way (logging-wise) and nice looking way (css) in php.

Any sample code?

Regards.
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Most Valuable Expert 2017
Distinguished Expert 2018

Commented:
How about
<pre>
<?php print_r($_POST);?>
</pre>

Open in new window


Not sure what you meant by logging-wise?
Most Valuable Expert 2011
Top Expert 2016
Commented:
First you need to understand what your post variables actually are!
http://php.net/manual/en/reserved.variables.post.php

When a client makes a request to a server, the client can send request variables.  If the request is made via the POST method, PHP will helpfully gather up the request variables and put them into a superglobal array called $_POST before your script is started.  The array contains data from an external source, therefore it is assumed to be a tainted attack vector.

There are several kinds of data that can be posted to your script from HTML forms.  You can have text or hidden or password controls, textarea string(s), checkboxes and radio controls, select dropdowns with single or multiple selections, etc.  Each of these input controls may be handled a little differently.  But all of them have two important characteristics in common.  They have a name and a value.  In the $_POST array, the name becomes the associative array key and the value, if any, becomes the associated value.  The last (rightmost) key of the same name contains the prevailing value, so if you have two HTML input controls with the same name, only the last one will show up in $_POST.  Empty input controls require a little understanding.  They are present, but the null string, in the case of most form inputs, except checkbox and radio controls.  In these controls, unfired form elements are omitted from the request and you will not find the name in the $_POST array.

You might want to set up some test cases using var_dump() to print out the contents of $_POST.  Then you can set up different forms and point the forms to the action script that will show you exactly how the POST request variables are received in your script.  You can use something like this script.

<?php // demo/bounce_post.php
error_reporting(E_ALL);
date_default_timezone_set('America/Chicago');

// START A BUFFER TO CAPTURE THE BROWSER OUTPUT
ob_start();

// USE PREFORMATTING TO MAKE THE OUTPUT EASY TO READ
echo '<pre>';

// SHOW THE GET REQUEST
echo "GET: ";
var_dump($_GET);
echo PHP_EOL;

// SHOW WHAT WAS RECEIVED IN POST
echo "POST: ";
var_dump($_POST);
echo PHP_EOL;

// CAPTURE THE BUFFER
$posted_data = ob_get_clean();

// SAY THANK YOU
echo "THANK YOU " . date('r');
echo PHP_EOL;
echo $posted_data;

Open in new window

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial