you could try three tables.
the first would be
tbl_ENTRIES
EntryID | UserID | #_of_form_entries
1 245 12
2 245 50
(entryID as a primary key so if the same user submits the form more than once, the first time with 12 names, the second time with 50, etc.)
the second table could be
tbl_NAMES
EntryID | NameEnteredInForm
1 Joe
1 Sally
1 Bob
etc.
and of course your generic User Table
tbl_USERS
UserID | Name | Blah
245 Ed etc.
on the form side, you could have a drop down list asking how many names they want to enter, then dynamically create that form with the correct number of textboxes.
to select the data, "select NameEnteredInForm from tbl_NAMES, tbl_ENTRIES where EntryID=some#...etc. (and/or by date/time, by user, etc.)
there's probably a better way with less redundancy of data, but this is off the bottom of my head. or just have the second sorry table....
depends on how you want your data used and structured and accessed and timestamped and.....