diff options
author | vascopj <devnull@localhost> | 2011-02-13 22:30:19 +0100 |
---|---|---|
committer | vascopj <devnull@localhost> | 2011-02-13 22:30:19 +0100 |
commit | ff1cfa1ae5c5440bfde35c36ecb4cdcd73cd3966 (patch) | |
tree | b45900e1bdf43a0159c54237c92a51ccc3a2a77a | |
parent | 0ba58b81b65c2059210b921856489b5faaa81369 (diff) |
Updated the post method and added the new functionality to the get method also
Updated the documentation
-rw-r--r-- | system/core/Input.php | 18 | ||||
-rw-r--r-- | user_guide/changelog.html | 1 | ||||
-rw-r--r-- | user_guide/libraries/input.html | 20 |
3 files changed, 38 insertions, 1 deletions
diff --git a/system/core/Input.php b/system/core/Input.php index fa8080deb..1be591508 100644 --- a/system/core/Input.php +++ b/system/core/Input.php @@ -111,6 +111,22 @@ class CI_Input { */ function get($index = '', $xss_clean = FALSE) { + // check if a field has been entered + if( empty($index) AND is_array($_GET) AND count($_GET) ) + { + // no field entered - return all fields + + $all_get_fields = array(); + + // loop through the full _GET array + foreach( $_GET as $key ) + { + $all_get_fields[$key] = $this->_fetch_from_array($_GET, $key, $xss_clean); + } + return $all_get_fields; + + } + return $this->_fetch_from_array($_GET, $index, $xss_clean); } @@ -127,7 +143,7 @@ class CI_Input { function post($index = '', $xss_clean = FALSE) { // check if a field has been entered - if( empty($index ) ) + if( empty($index) AND is_array($_POST) AND count($_POST) ) { // no field entered - return all fields diff --git a/user_guide/changelog.html b/user_guide/changelog.html index 35187efda..92513e6d6 100644 --- a/user_guide/changelog.html +++ b/user_guide/changelog.html @@ -120,6 +120,7 @@ Hg Tag: v2.0.0</p> <li>Altered Email Library to allow for method chaining.</li> <li>Added <kbd>request_headers()</kbd>, <kbd>get_request_header()</kbd> and <kbd>is_ajax_request()</kbd> to the input class.</li> <li class="reactor">Altered <a href="libraries/user_agent.html">User agent library</a> so that <kbd>is_browser()</kbd>, <kbd>is_mobile()</kbd> and <kbd>is_robot()</kbd> can optionally check for a specific browser or mobile device.</li> + <li class="reactor">Altered <a href="libraries/input.html">Input library</a> so that <kbd>post()</kbd> and <kbd>get()</kbd> will return all POST and GET items (respectively) if there are no parameters passed in.</li> </ul> </li> <li>Database diff --git a/user_guide/libraries/input.html b/user_guide/libraries/input.html index 552c49afd..4faecd768 100644 --- a/user_guide/libraries/input.html +++ b/user_guide/libraries/input.html @@ -132,12 +132,32 @@ else<br /> <code>$this->input->post('some_data', TRUE);</code> +<p>To return an array of all POST items call without any parameters.</p> +<p>To return all POST items and pass them through the XSS filter leave the first parameter blank while setting the second parameter to boolean;</p> +<p>The function returns FALSE (boolean) if there are no items in the POST.</p> + +<code> + $this->input->post(); // returns all POST items with XSS filter + <br /> + $this->input->post('', FALSE); // returns all POST items without XSS +</code> + <h2>$this->input->get()</h2> <p>This function is identical to the post function, only it fetches get data:</p> <code>$this->input->get('some_data', TRUE);</code> +<p>To return an array of all GET items call without any parameters.</p> +<p>To return all GET items and pass them through the XSS filter leave the first parameter blank while setting the second parameter to boolean;</p> +<p>The function returns FALSE (boolean) if there are no items in the GET.</p> + +<code> + $this->input->get(); // returns all GET items with XSS filter + <br /> + $this->input->get('', FALSE); // returns all GET items without XSS filtering +</code> + <h2>$this->input->get_post()</h2> <p>This function will search through both the post and get streams for data, looking first in post, and then in get:</p> |