Forum Moderators: coopster

Message Too Old, No Replies

Hitting a size limit on POST using checkboxes/radio buttons

         

quitegood001

6:36 pm on Jun 5, 2009 (gmt 0)

10+ Year Member



First I have to say my page was working fine until my hosting company upgraded my site to a new server.

I have a page which contains about a dozen or so radio buttons plus about 140 checkboxes. About 120 of those checkboxes are one per day for the next 4 calendar months (depends on # of days in each month). The name of those 120 checkboxes in the <input> tags is yymmdd[] and their value is the year, month, day in YYYYMMDD format. The form is using POST method and the processing script is in php. I am using foreach($_POST["yymmdd"] as $ymd) to access the data.

My problem comes in when I check more than 41 of the 120 checkboxes. If I leave it at 41 checked it works fine. It also fails if instead of checking a 42nd yymmdd[] checkbox I either check one of the 20 other checkboxes or also it fails if I select any of the unselected radio buttons. The failure is that the last <input> tag in the form fails to be received by the php processing page.

I have tried changing the amount of text in the <input type=text> boxes as well as the <input type=textarea> and I can add lots of additional text without any affect on the problem.

With our old web server, I was able to check all 120 of the checkboxes and nothing was changed in the .PHP code. Our hosting company doesn't have any clue as to what is different between the 2 servers. I ran a phpinfo() call and it shows post_max_size8M on the new server.

The web server is running linux 2.6.18-8.el5 so I assume it's probably using apache. PHP Version 5.2.9

Does anybody have a clue as to what other limit could affect the posting of numerous checkboxes/radio buttons?

coopster

7:02 pm on Jun 6, 2009 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



Welcome to WebmasterWorld, quitegood001.

We could guess all day long as there may be many variables involved here so my advice would be to first check your error logs. It's the easiest way to figure out what is happening.