ok, mira, tienes un form con el login, password y un boton submit,
al recibir el post debes validar usuario y password, si es correcto entonces abres una session.
en esa sesion vas a tener
Usuario
Session
Cookie
Hidden
guardas unos valores de unos 40 caracteres al azar, guardas la session $_Session["Key"], guardas la cookie setcookie("Key",$Cookie,time()+900) (por dar un ejemplo) y abajo del <form> escribes un Hidden con el valor del hidden, asi tienes 3 llaves.
el el post debes primero verificar si La session y la cookie tienen 40 caracteres y estan registradas con un usuario, si no, cierra la session y mandalo al login.
si existe entonces recuperas la tabla de la session y comparas el hidden, si no es correcto mandalo al login, si es correcto entonces generas una session, una cookie y un hidden, actualizas la tabla de las sessiones, acualizas la session, la cookie, validas la informacion del post y al escribir la pagina pones el nuevo hidden justo abajo del <form>
recomendacion, usa numeros, letras mayusculas, minusculas y algunos signos.
al dar click en "logout" destruyes la session, expiras la cokie y borras los 3 registro de la tabla de sessiones.
no es infalible, pero les va a costar acertar las 3 llaves para un usuario ya que nunca son las mismas claves y cambian con cada post del cliente.
creeme es mejor que guardar el login y el password en la session, te roban el numero de la session (que es lo mas facil) y entran al sistema sin nisiquiera tener el login ni el password.
ahora bien, si tienes alguna propuesta entonces esa sera la mejor opcion, adelante.