Ok. Let me set the scene...
I'm building a simple online database (non commercial by the way!) that contains information about different cars. When the user enters the site, he will be able to search the database via a simple HTML form which contains drop down menus, textfields and so on.
OK, so let's say that the user decides to view all cars that have a top speed of greater than 150mph. Well... after selecting that option from a drop down, they are taking to a page that displays the results (Google style). On this particular site, each result will be previewed with a small picture and a brief description. The user can then click on one of the small pictures (or sub titles) and will then be taken to a page that shows a full and detailed description of the car.
Ok, that's all pretty standard stuff that I'm sure you've seen before. The trouble is... when I'm creating the HTML form for doing the searches, it doesn't matter whether I use GET or POST- both methods are riddled with problems. I describe a couple of these problems as follows...
A PROBLEM WITH POST:
When you do an initial search, then click to view a page that contains full car details, all is well. BUT, when you click back on your browser the screen goes white and you get a "postnotcached" error.
You can of course, solve this problem by forcing the user to do a screen refresh, but to me that is not acceptable.
A PROBLEM WITH GET:
I must admit, GET, at first glance, seems more promissing than POST, but a closer look has revealed that like POST, it also comes with its own bag of problems. The main one being....
When you do a search using the form (using GET this time), then view the results, then zoom into a specific item page...all is well, at first. BUT, when you go back to the form and try an entirely new search, the results page ALWAYS shows you the same results that you had for the first search that you conducted. This seems to happen regardless of how many screen refreshes you do. Clearly that's being caused because the results page is cached when we use GET. However, just knowing that piece of information does not solve the problem. 🙁
Ok, so that's it. I'm sorry for the long message, but basically I'm totally depressed about GET and POST. It seems that both methods are crap in their own unique ways and I'm just wondering if anyone could offer some advice on this one. I really don't even know which of these two crappy methods I should use.
Thanks!