Posted by David Grant on 11/10/61 11:34
Shaun,
That is the documented behaviour for form fields in PHP.
See "Dots in incoming variable names" on the following page:
http://php.net/variables.external
Cheers,
David Grant
Shaun wrote:
> Hi,
>
> I have a form on my site with many file fields for users to upload files. I
> am trying to verify that for each file uploaded it corresponds with the name
> of the file field i.e.
>
> <tr>
> <td>File_1.CSV:</td>
> <td><input type="file" name="File_1.CSV"></td>
> </tr>
> <tr>
> <td>File_2.CSV:</td>
> <td><input type="file" name="File_2.CSV"></td>
> </tr>
>
> However if I loop through the $_FILES array like this:
>
> foreach( $_FILES as $key => $value ){
> echo '$key = '.$key.'<br />';
> echo '$value = '.$value.'<br />';
> }
>
> $key = File_1_CSV
> $value['name'] = File_1.CSV
> $key = File_2_CSV
> $value['name'] = File_2.CSV
>
> The . is replaced with an underscore in the $key value. I could get around
> this with a substr() but it seems a little inelegant, can anyone tell me why
> this is happening please?
>
> Thanks for your advice.
>
--
David Grant
http://www.grant.org.uk/
[Back to original message]
|