Здраствуйте, я тут заметил, что на всех форумах, кроме ExBB есть такая штука "запомнить" при входе обычно галочкой ставиться, а в ExBB этой галочки нету, но функция стоит фактически всегда на "запомнить".
Вопрос: нельзя ли запретить эту функцию по умолчанию и приделать такую галочку типа "Запомнить" ?
Я пробовал не получилось, вот обращаюсь к вам, дорогие умельцы ExBB, спасибо!
1. TEiD - 17 Июня, 2006 - 13:04:20 - перейти к сообщению
2. SKIF - 17 Июня, 2006 - 13:30:27 - перейти к сообщению
TEiD пишет:
Я пробовал не получилось, вот обращаюсь к вам, дорогие умельцы ExBB, спасибо!
что пробовал-то???? я тебе чессно скажу.. плохо ты пробовал !!! Надо всего-то уметь выставлять срок жизни куков .
3. TEiD - 18 Июня, 2006 - 02:41:38 - перейти к сообщению
SKIF, я их вообще пытался запретить юзеру ставить, то есть работа тока по сессии, но тада рисково его может выкинуть.
Я пробовал сделать так как описал в первом посте, авто запоминание убрать и сделать галку "запомнить" при входе.
Подскажи уж что сделать надо и где Плиз!
Я пробовал сделать так как описал в первом посте, авто запоминание убрать и сделать галку "запомнить" при входе.
Подскажи уж что сделать надо и где Плиз!
4. SKIF - 18 Июня, 2006 - 03:18:02 - перейти к сообщению
ну имхо в loginout.php нужно подредактировать вотэтот кусок
если поизучать функцию my_setcookie() в lib.php легко можно заметить, что третий параметр - это как раз срок действия куки, если он равен -1 (или вообще empty) то ставиться бессрочная кукка, в противном случае наоборот.
вообщем делаешь чекбокс с именем, ну например name="user_remember" ... и потом проверяешь, если оно TRUE пришло, ставишь третий параметр во все вызовы функции my_setcookie();. Чем он равен сам решишь... это то время на которое устанавливается пирог.
а можно вообще ещё круче сделать и разрешить пользователям самим устанавливать время сессии... типа помнить меня столько-то минут. Только в этом случае нужно будет вместо чекбокса ставить type="text"...
CODE:
my_setcookie('exbbn',$logeduser['id']);
my_setcookie('exbbp',md5($logeduser['pass']));
my_setcookie('lastvisit',$now_time);
header('Location: index.php?'.session_name().'='.session_id()); exit;
my_setcookie('exbbp',md5($logeduser['pass']));
my_setcookie('lastvisit',$now_time);
header('Location: index.php?'.session_name().'='.session_id()); exit;
если поизучать функцию my_setcookie() в lib.php легко можно заметить, что третий параметр - это как раз срок действия куки, если он равен -1 (или вообще empty) то ставиться бессрочная кукка, в противном случае наоборот.
вообщем делаешь чекбокс с именем, ну например name="user_remember" ... и потом проверяешь, если оно TRUE пришло, ставишь третий параметр во все вызовы функции my_setcookie();. Чем он равен сам решишь... это то время на которое устанавливается пирог.
а можно вообще ещё круче сделать и разрешить пользователям самим устанавливать время сессии... типа помнить меня столько-то минут. Только в этом случае нужно будет вместо чекбокса ставить type="text"...
5. TEiD - 18 Июня, 2006 - 04:59:37 - перейти к сообщению
SKIF, блин чуть не туда смотрел и не знал что если -1, то вообще не ограничено, спасибо попробую сегодня же.
А ставить время сессии юзеру по-моему не надо, ведь некоторые могут не понять что это вообще! Ведь большинство юзеров не смотрит как в правила форума, так и в справку! Поэтому и сюды особо смотреть не будут.
Ну короче СПАСИБО!
А ставить время сессии юзеру по-моему не надо, ведь некоторые могут не понять что это вообще! Ведь большинство юзеров не смотрит как в правила форума, так и в справку! Поэтому и сюды особо смотреть не будут.
Ну короче СПАСИБО!
6. TEiD - 18 Июня, 2006 - 05:49:15 - перейти к сообщению
SKIF, блин я поставил третий параметр, а ни фига не работает, от сессию сохраняет по-моему, я пытался вообще сервер выключить и снова глянуть, всё равно зараза помнит, хоть ты тресни
Может что не так, выдвини свою версию изменений в кодах, плиз
Может что не так, выдвини свою версию изменений в кодах, плиз
7. SKIF - 18 Июня, 2006 - 06:10:39 - перейти к сообщению
TEiD пишет:
SKIF, блин я поставил третий параметр, а ни фига не работает, от сессию сохраняет по-моему, я пытался вообще сервер выключить и снова глянуть, всё равно зараза помнит, хоть ты тресни
Может что не так, выдвини свою версию изменений в кодах, плиз
Может что не так, выдвини свою версию изменений в кодах, плиз
ты глянь повнимательнее в код функции, а?
CODE:
function my_setcookie($name, $value = "", $exp = 1) {
$exipres = 0;
if ($exp == 1) {
$expires = time() + 31536000; #+ year (60*60*24*365 = 31536000)
} elseif ($exp > 1) {
$expires = time() + $exp; #+ year (60*60*24*365 = 31536000)
} else {$expires = time() - 1000;}
@setcookie($name, $value, $expires, '/','');
}
$exipres = 0;
if ($exp == 1) {
$expires = time() + 31536000; #+ year (60*60*24*365 = 31536000)
} elseif ($exp > 1) {
$expires = time() + $exp; #+ year (60*60*24*365 = 31536000)
} else {$expires = time() - 1000;}
@setcookie($name, $value, $expires, '/','');
}
и попробуй заменить последнюю строчку, например, на такую
CODE:
@setcookie($name, $value, time(), '/','');
и посмотри... будет он тебя помнить или нет... только ты это.. после установки сессию-то закрывай, а то ничего не увидишь. Пока сессия активна имхо ему все куки побоку! А ещё лучше просто браузер перезапусти для чистоты эксперимента
8. TEiD - 18 Июня, 2006 - 08:36:59 - перейти к сообщению
SKIF, я немного по другому делал! Ну так тожа попробую.
А когда делаю изменения в коде, я вообще выключаю сервак
А когда делаю изменения в коде, я вообще выключаю сервак