Leni,
that sounds as though it will be ok for basic security. However, I do not think that your approach protectects against session hijacking. To protect against this, you can do one or both (pref. both) of the following:
1 - Check that the IPs between requests match. This will involve storing the users IP in the database at the start of the session, and comparing at each subsequent request. However, you should probably only check the first 24bits of the IP, as some ISPs use multiple proxys, so IPs can change, but it is normally limited to an 8bit subnet.
2 - On each request generate a random string. Store that string in a cookie variable (seperate to PHPs session handling), and in the database. For each request, compare the cookie's random string with the one in the database. The means that an attacker would have to intercept the session and take advantage before the user made another request.
I hope this helps you. Personally, I dont use PHP's built in session handling - I use a Session class which checks the user agent, IP, and random string for me - and then stores values for that session in the db.