Помощник
|
Помогите найти ошибку в куки! |
hnerd
|
Сообщение
#1
|
||
|
|
||
|
|||
ixman |
4.8.2014, 20:32;
Ответить: ixman
Сообщение
#2
|
|
header("Location: a.php"); сюда попробуйте полный URL до файла a.php
|
|
|
hnerd
|
Сообщение
#3
|
|
header("Location: a.php"); сюда попробуйте полный URL до файла a.php Нет, она направляется на a.php, просто куки не сохраняет. А в a.php у меня условие,если кук нет, то направлять меня на страницу с формой: if($username == null){ header("Location: index.php"); } Когда я вместо index.php подставила b.php(пустая страница, то она мне и открылась после того, как я в форму имя ввела.) Получается, что условие внизу на странице a.php не выполняется: if(isset($_COOKIE['username'])){ $username = $_COOKIE['username']; } А почему оно не выполняется я понять не могу. Куки у меня в браузере включены! Сообщение отредактировал hnerd - 4.8.2014, 21:30 |
|
|
fedornabilkin |
4.8.2014, 22:07;
Ответить: fedornabilkin
Сообщение
#4
|
|
Попробуй так:
|
|
|
ixman |
4.8.2014, 22:35;
Ответить: ixman
Сообщение
#5
|
|
Вы попробуйте вывести кукис, ставиться он или нет. Ну и синтаксис тоже может быть проблемой
Сообщение отредактировал Ixman - 4.8.2014, 22:36 |
|
|
hnerd
|
Сообщение
#6
|
|
Вы попробуйте вывести кукис, ставиться он или нет. Ну и синтаксис тоже может быть проблемой
Спасибо, что вы мне помогаете! Куки ставятся! когда я на страницу index.php в этот код setcookie('username', $username, time() + 3600 * 24 * 7); вместо $username вставила "маша" вот так: setcookie('username', "маша", time() + 3600 * 24 * 7); , то у меня вошел на страницу a.php! И на странице a.php в этом коде: Вы вошли как <b><?php echo $username; ?></b> | <a href="index.php">Выход</a> вместо $username подставилось "маша". и все получилось! (ну это и понятно) Получается, что куки у меня сохраняются. Тогда я подумала, что не передается значение $_POST['username'] из формы и решила проверить: 1. на странице index.php этот код пока скрыла от интерпретации php: /*if(!empty($_POST)) $enter_site = Login($_POST['username']); if($enter_site){ header("Location: a.php"); exit(); }*/ После этого я написала такие строчки, чтобы проверить сохраняются ли значения в массиве пост: $enter_site = $_POST['username']; echo $enter_site; Значения сохраняются! Я перезагрузила страницу, ввела в форму "Простоеимя" и нажала войти и вот, что у меня открылось: То есть получается куки читаются и проверка на странице a.php работает, в массив $_POST тоже значения сохраняются, а сайт все-равно перенаправляет на страницу index.php, когда я ввожу значение в форму! Значит проблема в этой функции: function Login($username){ if($username = '') return false; setcookie('username', $username, time() + 3600 * 24 * 7); return true; } Я проверила, выводит ли функция "true" в переменную $enter_site здесь: if(count($_POST) > 0) $enter_site = Login($_POST['username']); вывела echo $enter_site; Ответ оказался: "1", значит true. Значит выводит. Больше я не знаю, в чем же все-таки проблема! Я просто в отчаянии! В чем же тогда проблема! Сообщение отредактировал hnerd - 5.8.2014, 13:19 |
|
|
fedornabilkin |
5.8.2014, 14:10;
Ответить: fedornabilkin
Сообщение
#7
|
|
Если честно, у тебя в корне не верная концепция.
Юзеры никуда не сохраняются и может так получиться, что с логином fedornabilkin будут одновременно присутствовать несколько пользователей. Логин должен быть уникален и куда-то записан. Обычно в БД. Помимо этого, зачем тебе вообще нужны эти две функции? И обычно авторизацию делают на сессиях. Не помню уже почему, но меня убедили. что сессии правильнее использовать в таком случае. Например так:
Сообщение отредактировал fedornabilkin - 5.8.2014, 14:12 |
|
|
ixman |
5.8.2014, 14:15;
Ответить: ixman
Сообщение
#8
|
|
Чуть позже реализую ваш код на локалке и посмотрю что там не так
|
|
|
fedornabilkin |
5.8.2014, 14:37;
Ответить: fedornabilkin
Сообщение
#9
|
|
Посмотри вот этот файл. Сам писал, сам проверял. Все гораздо проще.
http://zaka4ano.ru/3444 Сообщение отредактировал fedornabilkin - 5.8.2014, 15:14 |
|
|
ixman |
5.8.2014, 15:45;
Ответить: ixman
Сообщение
#10
|
|
У меня cookie не ставиться )) с этого скрипта и немного менял код, всё равно не работает
Одно могу сказать, почему-то печенька постоянно удаляется, почему я так и не понял http://prntscr.com/49r26e |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Нужен кодер, чтобы пофиксить ошибку Wordpress после переноса сайта | 0 | Alex-777 | 814 | 7.4.2024, 18:05 автор: Alex-777 |
|
Через какой браузер и как можно найти в кэшэ браузера видео | 10 | Room | 2280 | 23.3.2024, 7:41 автор: Room |
|
Помогите вспомнить рекламного бота Телеграм для обмена рекламой | 0 | Mixatraider | 725 | 21.2.2024, 23:42 автор: Mixatraider |
|
Помогите рещить проблему с монитором. Почему низкое разрешение при подключении монитора через displayport? |
0 | Levels | 1701 | 11.12.2020, 0:48 автор: Levels |
|
Помогите кто нибудь получить партнерку Росбанк! | 7 | heisenberg_mw | 2340 | 7.8.2020, 9:28 автор: heisenberg_mw |
Текстовая версия | Сейчас: 18.4.2024, 10:14 |