3) Read the submitted data back into the form on page load. If more than 30 rows were submitted then all those rows are shown and 10 more empty ones. IF less than 30 rows were submitted then 30 rows are shown in total. Save each row with the NOW() datestamp.
4) Edit the submitted data and save it back to the database.