i don't think your solution is very good... imagine a forum like this one... imagine you are typing a message (a post-reply, for example) and then by accident or not, you try to login again from another machine... there goes your 500-line post-reply...
Ok - I am trying to imagine this - you are writing a massive reply getting deeply involved in the subject matter - and then for some bizarre reason before you finish it and press sumit, you get up - go to another machine, and then you try and log in somewhere else... and are suprised that your original session expires... not very likely me thinks, unless you really are a bit dim.
Hmmm - tbh - I think your reasoning is deeply flawed, but I see what you are saying - and this may (in a freaky world) happen. Also, this forum system actually uses a cookie based system to store your login details (well - mine does at the moment) and I know I can open up several browsers on this machine and be connected to this forum using several different sessions all at the same time (since each new instance of the IE application - not just a "new window" - is regarded as a seperate process and hence gets assigned a seperate session).
If we take a solution used by another system - Yahoo Mail - you can see how they tackle the same problem. When I used to use their system, it may be that you spend 20 minutes writing an email (or whatever their session timeout was set to), and additionally, if you logged in on another machine then you were logged out from your current Yahoo Mail session and had to re-authenticate yourself.
I am glad to say that finally they have found a solution that seems to work. It appears that now, if you spend 20 mins writing your email, or you get logged onto another machine while writing said email, then you will not automagically be logged out when you try to send it. Instead, the system will let you send the email (probably by checking that your session variable has been set to determine that you ARE logged in - but not worrying about your session id matching that the latest stored version is the same as yours), and then when you try to navigate to a different page after that, you will be asked to re-authenticate yourself.
This - as far as I can see - is probably the best system in that you are not waiting 10 (or more) minutes for a session to expire on your system (bearing in mind that the default setting for session timeout in PHP is 0).
Anyhow - hope this helps you in some way.