Hi Miles,

Thanks for the reply.

I see what youšre doing there and had looked at the foreach() functionality,
but am I right in saying that I still need to use the multidimensional array
since there are three variables in each line? (id, tracking, kb_ship)?

Enda
--


On 19/05/2004 00:58, "Miles Thompson" <[EMAIL PROTECTED]> wrote:

> At 07:56 PM 5/18/2004, Enda Nagle - Lists wrote:
> 
>> >Its OK guys,
>> >
>> >Got something else myself.
>> >Herešs the solution... Any suggestions appreciated...
>> >
>> >
>> >/////////////////////////////
>> >// UPDATE PART
>> >/////////////////////////////
>> >$i=1;
>> >
>> >//while ($ordersinfo[$i])
>> >while ($i < $total)
>> >{
>> >$session = $ordersinfo[$i][session];
>> >$tracking = $ordersinfo[$i][tracking];
>> >$kb_ship = $ordersinfo[$i][kb_ship];
>> >
>> >$update = mysql_query("UPDATE products_orders SET tracking='$tracking',
>> >kb_ship='$kb_ship' WHERE session='$session'") or die (mysql_error());
>> >
>> >$i++;
>> >}
>> >
>> >/////////////////////////////
>> >// MAIN PART
>> >/////////////////////////////
>> >...
>> ><td align=\"default\" width=\"100\"><input type=text
>> >name=\"ordersinfo[$i][tracking]\" value=\"" . $roworders[tracking] . "\"
>> >size=25></td>
>> >...
>> >
>> >
>> >Regards
>> >
>> >Enda
>> >--
>> >
>> >
>> >On 18/05/2004 23:20, "Enda Nagle - Lists" <[EMAIL PROTECTED]> wrote:
>> >
>>> > > Hi
>>> > >
>>> > > I have a current application where I am listing a table of order
>>> details,
>>> > > where a fulfillment company can enter the tracking number and the cost
of
>>> > > the shipment.
>>> > >
>>> > > At present, I have up to 40 orders displayed, and when they click on the
>>> > > Œupdateš button, the code executes as
>>> > >
>>> > >     if ((isset($tracking1)) && (isset($kb_ship1))){
>>> > >       $update=mysql_query("UPDATE orders SET
>>> > > tracking='$tracking1',kb_ship='$kb_ship1' WHERE order_ref =
>> > '$ref1'",$link);
>>> > >     }
>>> > >
>>> > > And this continues as tracking 2... tracking40.
>>> > >
>>> > > I would like to implement something like
>>> > >
>>> > >   foreach ($_POST["ref"]){
>>> > >       $update=mysql_query("UPDATE orders SET
>>> > > tracking='$tracking',kb_ship='$kb_ship' WHERE order_ref =
>>> '$ref'",$link);
>>> > >   }
>>> > >
>>> > > Instead, but Išm not so sure how I can do this, given that form
>>> variables
>>> > > cannot be named the same etc.
>>> > >
>>> > > Išm sure that therešs a better way that the way in which Išm doing it
>> > at the
>>> > > moment, so any input would be appreciated.
>>> > >
>>> > > Thanks
>>> > >
>>> > > Enda
>>> > > --
>>> > >
>>> > >
> 
> Enda,
> 
> This is close to your situation, but I only needed a one dimensional array
> for a bulk delete. So the form part has this line:
>          print( '<input type="checkbox" name=chkdelete[] value="' .
> $myrow['sub_key'] . '">');
> There's no need for a subscript in the form - there are presently a
> potential of 963 elements in this array. When we check for bulk delete it's
> never contiguous, we skip down the list, so array is v. sparse.
> 
> And the processing part uses this loop:
> 
>          foreach ($chkdelete as $value){
>                  $sql = "delete from subscriber where sub_key = '$value'";
>                  $result = mysql_query($sql);
>          }
> 
> This way I'm in no danger of hitting a missing subscript as I might if I
> used $chkdelete[ $i ], incrementing $i
> 
> HTH - Miles


Reply via email to