Re: Help on dealing with arrays of HTTP_POST vars
| From: | Jim Lucas | Date: | Wed, 19 Dec 2001 19:16:40 +0000 |
| Subject: | Re: Help on dealing with arrays of HTTP_POST vars | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-78240@lists.php.net to get a copy of this message | ||
in your SearchOrder() function change the for() to a foreach()
Jim
----- Original Message -----
From: "Carlos Fernando Scheidecker Antunes" <nando@antunes.eti.br>
To: "PHP-GENERAL" <PHP-GENERAL@lists.php.net>
Sent: Wednesday, December 19, 2001 10:15 AM
Subject: [PHP] Help on dealing with arrays of HTTP_POST vars
> Hello All,
>
> I have developed a system to retrieve data from a table. The interface is
a
> dynamic list of orders created from a query on the database that shows all
> the new orders. Next to each is a checkbox. Each checkbox has as its value
> the order number and is called PED1, PED2, PED3,....PEDn,.... depending on
> how many new orders are available. If the user wants to access these
orders
> he has to check the orders he wants and click the submit button. Once it
is
> submited, it searches all the PED# variables on the HTTP_POST_VARS and
> builds an array called $Orders. The $Orders array contains order numbers
and
> is later used to query a different table.
>
> Ths code works almost great. But there is a problem, if the first
checkbox,
> say PED1 field is not checked, and some of the other checkboxes are (say
> PED2, PED4), the $Orders array ends being empty. So, say that the form has
5
> orders and the user selects orders 2, 4 and 5 and submit it. It does not
> work. But if he selects 1,2, 4 and 5 it works. It works only if the first
> checkbox is checked too.
>
> What I wonder is why this code does not work if PED1 checkbox is not
> checked. What if the user only wants other stuff but the first order PED1?
>
> Could you help me on this?
>
> Here's the code:
>
> This is a function that searches for variables called PED1, PED2, PED3
that
> are checkboxes on a submited form and have the order numbers. When this
> checkbox is checked, the ordernumber is saved on an Array $Orders that is
> later used to build a SQL statement.
>
> function SearchOrders() {
> global $Orders;
> global $HTTP_POST_VARS;
>
> $index = count($HTTP_POST_VARS);
>
> for($i=1; $i <= $index; $i++) {
> if (isset($HTTP_POST_VARS["PED$i"]))
> $Orders[] = $HTTP_POST_VARS["PED$i"];
> }
> $index = count($Orders);
> return $index;
>
> }
>
> This is a function that retrieves the array values that are order numbers
> from the array $Orders and assembles a SQL statement $query.
> This will later retrieve data from a MySQL table;
>
> function MontarOrdRel() {
> global $Orders;
>
> $query = "SELECT * FROM tbl_Ord ";
>
> if (count($Orders) > 0)
> $query .= "WHERE ";
>
> for($index=0; $index < count($Orders); $index++) {
>
> if ($index < (count($Orders)-1)) {
> $query .="(NumPedido = '".$Orders[$index]."') OR ";
> }
> else {
> $query .="(NumPedido = '".$Orders[$index]."') ";
> }
> } // for loop
> $query .= "ORDER BY NumOrd";
>
> Then $query is used to query a table.
>
> Thank you for your help,
>
> Carlos Fernando Scheidecker Antunes.
>
>
> Linux User #207984
>
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, e-mail: php-general-unsubscribe@lists.php.net
> For additional commands, e-mail: php-general-help@lists.php.net
> To contact the list administrators, e-mail: php-list-admin@lists.php.net
>
>