As long as you encrypt any sensitive data, your cookie should be resonably secure. Try this example, it does not require database interaction as validation is done with pure PHP.
// set cookie
$salt = 'NHx39sjHde';
$time = time();
$hash = sha1($salt . $username . $time);
setcookie('userdata', base64_encode("$hash-$username-$time"), time()+3600);
// retrieve cookie
$salt = 'NHx39sjHde';
if (isset($_COOKIE['userdata']))
{
$args = explode(base64_decode($_COOKIE['userdata']));
if (sha1($salt . $args[1] . $args[2]) == $args[0])
{
// authentic user
$username = $arg[1];
}
else
{
// remove bad cookie
setcookie('userdata', false, time()-3600);
}