Пишу короче сайт с нуля, написал в регу, вот теперь пытаюсь сделать, когда юзер зареган чтобы форма регистрации ему не была видна. Скрываю так: Код (PHP): if($user['id']){ header('Location: /'); exit; } //переадресация на главную И прописал в рега: Код (PHP): setcookie('unick', $nick, time()+86400*365, '/'); setcookie('upass', $pass, time()+86400*365, '/'); Вот сама ф-ция, в корне: Код (PHP): if(isset($_COOKIE['unick']) && isset($_COOKIE['upass'])) { $unick = trim(htmlspecialchars(mysql_real_escape_string($_COOKIE['unick']))); $upass = trim(htmlspecialchars(mysql_real_escape_string($_COOKIE['upass']))); if(empty($unick) or empty($upass)) { setcookie('unick', '', time()-((60*60)*24), '/'); setcookie('upass', '', time()-((60*60)*24), '/'); } $user = mysql_fetch_assoc(mysql_query("SELECT * FROM `user` WHERE `nick` = '".$unick."' and `pass`='".$upass."' LIMIT 1")); if(isset($user['id'])) { setcookie('unick', '', time()-((60*60)*24), '/'); setcookie('upass', '', time()-((60*60)*24), '/'); } } Но чет не скрывает, почему? Что не так? PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
Тут поможет отладка программы (debug), придётся перепроверить каждое действие программы, только полностью понимая как работает твой скрипт, ты сможешь найти любую ошибку, например логическую. Начать разбираться что такое отладка можно с этих инструкций, два разных подхода: http://phpfaq.ru/debug http://netbeans.org/kb/docs/php/debugging_ru.html Пароль в cookie хранить очень не безопасно, используй сессию. Я не вижу какую форму ты скрываешь.
Возможно, в документации к mysql_query и другим функциям есть примеры, там ещё проверку делают, была ошибка или нет, а у тебя без проверки. лучше mysql заменить на mysql_pdo или mysqli, так как mysql устарела, скоро PHP 7 выйдет, там её не будет.