Вы не зашли.
Главная » PHP » сессии
#1. center Off (0)
Участник
2009.10.09 23:11
http://сайт.ру/index.php?mode=cat&id=14&sessiaID=6d88ea61a51d0bc943ecd18016b12ae8 а как сессию через реврайт убрать? скрыть их?
#2. Gemorroj Off (107)
Administrator
2009.10.09 23:11
никак. а зачем?
#3. center Off (0)
Участник
2009.10.10 15:03
да а зачем ана? страшная ссылка выглядит
http://сайт.ру/index.php?mode=cat&id=14&sessiaID=6d88ea61a51d0bc943ecd18016b12ae8

http://сайт.ру/cat/14/ хотел вот так сделать а сессия та ана переменная ее непалучается чем нибуди заменить дапустим $ses=ses хатябы так http://сайт.ру/cat/14/ses
Добавлено спустя   4 минуты  37 секунд:
меня вчера даперла пачиму такой обмен в паблике он страшен проста )))) /index.php?mode=cat&id=14 это проста ужс , и сессию хрен скроеш наверна есле ее убрать то авторизация слитать будит.... и я хочу в реврайт перевести вчера начел но с сесиями нече непридумал ..........
#4. Gemorroj Off (107)
Administrator
2009.10.10 15:03
запрети подставлять id сессии к ссылкам и передавай их через кукисы.
среди непубличных скриптов говна так же хватает. а среди оупенсорсных сериптов есть очень даже ничего вещи. друпал скажем.
#5. center Off (0)
Участник
2009.10.10 15:03
мне дле нравится ))
Добавлено спустя   5 минут  44 секунды:
#php_value session.use_trans_sid 1

вот этож? закаментировал я ее а кукисы какой код надо прописать?
#6. Gemorroj Off (107)
Administrator
2009.10.10 16:04
не комментируй, а 0 поставь
#7. DarkDaNTe Off (11)
Участник
2009.10.10 18:06
Не устраивает ссылка вида http://сайт.ру/cat/14/6d88ea61a51d0bc943ecd18016b12ae8/ ?
#8. center Off (0)
Участник
2009.10.10 20:08
DarkDaNTe такую нехочу 

не комментируй, а 0 поставь неработает
#9. Gemorroj Off (107)
Administrator
2009.10.10 21:09
center, можно ограничить количество символов в id сессии, но чем меньше вариантов id сессии, тем выше вероятность перезаписиси существующих сессий новыми.
Т.е. может так случится, что человек сидит с id сессии "dff4f", тут авторизуется новый человек, ему пристаивается id сессии с тем же именем, т.к. мало вариантов для выбора и оба человека сидят под одним аккаунтом.
#10. center Off (0)
Участник
2009.10.11 00:12
сессии вроди я разобрался вот пачему это неработает 500 ошибка

RewriteRule ^.*-s([0-9]+)/.*-g([0-9]+)\.html$/obmennik/html_red.php?style=$1&group=$2 [L]



http://сити ру/obmennik/html_red.php?mode=cat&id=5

cat переменная -s([0-9]+ из за етого?
#11. AND Off (11)
Участник
2009.10.15 20:08
Gemorroj написал:
center, можно ограничить количество символов в id сессии, но чем меньше вариантов id сессии, тем выше вероятность перезаписиси существующих сессий новыми.
Т.е. может так случится, что человек сидит с id сессии "dff4f", тут авторизуется новый человек, ему пристаивается id сессии с тем же именем, т.к. мало вариантов для выбора и оба человека сидят под одним аккаунтом.
Напиши плиз как ограничить количество символов в id сессии, гугл не знает...
#12. Gemorroj Off (107)
Administrator
2009.10.15 21:09
Код:
session_id(mt_rand(1000, 9999));
session_start();
smile)
Кстати, насчет того что сессия перезапишется, я был не прав, PHP лочит файл с сессией. Так что новая сессия не запустится.
#13. AND Off (11)
Участник
2009.10.15 21:09
Спасибо, сделал так:
Код:
span style="color: #0000BB"><?php$i = 0;$sid = '';$array = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';while($i < 10) { $sid .= $array[mt_rand(0, 61)]; $i++; }session_id($sid);session_start();?>
#14. Gemorroj Off (107)
Administrator
2009.10.15 21:09
Код:
$sid = substr(str_shuffle('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'), 0, 10);
#15. AND Off (11)
Участник
2009.10.16 17:05
Если самому устанавливать session_id, сессии не работают, при каждом обновлении новая сессия. Как исправить?
Код:
span style="color: #0000BB"><?phpsession_id(substr(str_shuffle('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'), 0, 10));session_start();if(!isset($_SESSION['counter'])) { $_SESSION['counter'] = 0;}echo 'Вы обновили эту страницу '.$_SESSION['counter']++.' раз. <br /><a href='.$_SERVER['PHP_SELF'].'>обновить</a>'; ?>
#16. Gemorroj Off (107)
Administrator
2009.10.16 20:08
ну правильно, ты же генеришь каждый раз новый идентификатор сессии.
#17. AND Off (11)
Участник
2009.10.16 21:09
Так правильно?
Код:
if(!isset($_REQUEST[session_name()])) {
session_id(substr(str_shuffle('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'), 0, 10));
}
session_start();
Теперь другая проблемка....
Массив $_REQUEST не содержит данные массива $_COOKIE, php.ini коряво настроил?
#18. Gemorroj Off (107)
Administrator
2009.10.16 22:10
мммм... ну а что в директиве variables_order ?
#19. AND Off (11)
Участник
2009.10.16 22:10
variables_order = "GPCS"
PHPINFO
Отредактировано AND (2009.10.17 13:01)
#20. Gemorroj Off (107)
Administrator
2009.10.16 23:11
домашний сервер?)
Вроде все ок. А Сами сессии точно стартуют? т.е. там папка для хранения файлов сессий /tmp, она есть и в ней есть файлы с сессиями?
#21. AND Off (11)
Участник
2009.10.17 00:12
Gemorroj написал:
домашний сервер?)
ну да, раньше стоял STPServer, теперь сам поставил сборку Apaсhe+PHP+MySQL, видимо где-то накосячил...

С сессиями все норм.

...
Первый массив $_REQUEST, второй - $_COOKIE
Отредактировано AND (2009.10.17 13:01)
#22. Gemorroj Off (107)
Administrator
2009.10.17 00:12
Вообще пока не знаю в чем дело. Но могу сказать что это дело в PHP 5.3 и выше.
Проверил у себя, на 5.2.11 - есть и $_COOKIE и $_REQUEST, а вот на 5.3.2-dev есть $_COOKIE, но нету $_REQUEST
Надо погуглить)
Добавлено спустя   3 минуты  58 секунд:
Ага...)
В php.ini 5.3 появилась новая директива request_order
и по умолчанию стоит request_order = "GP"
Судя по всему это то что нам нужно)
Стоит изменить на GPC, вероятно. Почему убрали кукисы пока не понимаю.
#23. AND Off (11)
Участник
2009.10.17 00:12
Cпс, теперь работает smile
Страниц: 1 2 3 Все
Главная
WEB
PunBB Mod v0.6.2
0.023 s