On 05 October 2004 11:10, Angelo Zanetti wrote:

> Hi all,
> 
> this might be slightly off-topic in a way but Im looking for help not
> flaming. 
> 
> Ok I have a checkbox array that I populate from a DB using php:
> 
> while ($row = mysql_fetch_array($result))
>       echo("<input type=checkbox name=chkmodels[] value=" .
> $row['models_id'] . ">" . $row['models_type'] . "<br>");
> 
> So when I want to see each variable in the array I use:
> 
>               foreach ($_POST['chkmodels'] as $c)
>               {
>                       echo("<br> value: " . $c);
>               }
> 
> this is fine.
> 
> but what I want to clarify is that if I change my PHP echo statement
> to: 
> 
> echo("<input type=checkbox name=chkmodels value=" . $row['models_id']
> . ">" . $row['models_type'] . "<br>");
> 
> basically without the [] then it is still recognised as an array. But
> when the array is passed back it is returned as a string separated by
> commas.

No, this is incorrect.  You will see only the last value selected, returned
as a simple scalar.  PHP doesn't do automatic array-ification of multiple
values -- that's why you need the [] in the name attribute.

Cheers!

Mike

---------------------------------------------------------------------
Mike Ford,  Electronic Information Services Adviser,
Learning Support Services, Learning & Information Services,
JG125, James Graham Building, Leeds Metropolitan University,
Headingley Campus, LEEDS,  LS6 3QS,  United Kingdom
Email: [EMAIL PROTECTED]
Tel: +44 113 283 2600 extn 4730      Fax:  +44 113 283 3211 

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to