Eliminate redundancy from session authentication
Your two queries are essentially the same, except the second query is also joining to the users table.  This suggests that you might be able to remove the first query and simply execute the second query.

OUTER JOIN

Since you've said that it is possible for a client to have an active session, but no user associated with it, then you would need to to use an outer join, which mysql seems to support, to connect to the users table.  The explanation in the documentation isn't overly easy to follow, but essentially, when you do a normal join results are only returned if all the join criteria are met.  If you do an outer join, then results from the outer joined table (users) will be returned if present, otherwise columns from that table will be returned as null.

You can then determine if a user has a session (a row is returned) and if they're logged on (users columns have values) from a single query.