You need to be careful if your page is expected to be accessed via GET requests from a smartphone.
I noticed that when I explicitly (or via JavaScript) refresh a page on my smartphone using Chrome, the browser sends three simultaneous GET requests to get a complete page. In these requests, cookies are reset and the session ID is renewed, which might lead your PHP script to believe that these are new connexions.
I could not determine which criteria the browser uses to decide how many different requests should be sent. However, this does not happen with pages obtained from a POST request.
A word of advice: forms should not use the GET method if their processing involves writing data (database, file, email, etc.), but only if the subsequent actions simply involve reading data.