Капча в опере-мини
1.
Саня (06.08.2010 / 15:19)
Помогите народ,так как не могу понять в чем дело. С компьютера капча вводиться нормально и все работает хорошо, а с оперы мини выбивает что капча неправильная. Может кто сталкивался с подобным и знает как же это лечиться. С меня + . Горю (
2.
delete (06.08.2010 / 15:59)
дело в том что сессия к которой привязывается код на картинке, почему то быстро умирает, если с оф.версии вводить, то еще не всегда умирает, а вот с мода это очень частое явление)) видимо когда жмем "ввод" наша текущая сессия меняется и уже не совпадает с той что было..хз как с этим бороться, еще не видел не одного сайта, что б с мода все с первой попытки прошло успешно.
3.
delete (06.08.2010 / 16:05)
что то совершенней надо чем $_SESSION['kod']
4.
Саня (06.08.2010 / 16:13)
3.
Денис Петрович, да. проблема именно с модом оперы....
ну что же. придется вырезать капчу.
5.
delete (06.08.2010 / 16:13)
время жизни сессии ведь строго установлено и если принудительно её не сбразывать она не умрет, а вот почему опера её сама по себе сбрасывает..загадка
6.
delete (06.08.2010 / 16:16)
sanzstez (6 Августа 2010 / 16:13)
3. Денис Петрович, да. проблема именно с модом оперы....
ну что же. придется вырезать капчу.
для меня эта проблема тоже актуальна, т.к использую оперу мод сам и пишу двиг и уверен что многие тоже еще их юзают, но на сайте то все впорядке, авторизация ж не слетает..
7.
delete (06.08.2010 / 16:20)
есть такая идея, в случае ошибки при регистрации, создать проверку на наличие данных кода в сессии, и если какая ошибка возникла не генерировать новую капчу, а посылать запрос обратно в нее, что б картинка была всегда одна для текущей регистрации.
8.
Владимир (06.08.2010 / 16:59)
Есть выход. Заносить код капчи не в сессию, а сохранять в файл.
Пример строки в файле:
127.0.0.1<||>kod_captcha
Как бы привязывать капчу к IP и записывать это в файл.
И потом проверять на правильность ввода капчи с данными в файле. Запись IP нужна для того чтобы если вдруг одновременно 2 юзера захотят регнуться.
9.
Владимир (06.08.2010 / 17:03)
Для того чтобы данные файла нельзя было как либо прочесть можно файл сохранять с расширением php в таком виде:
<?php
#127.0.0.1<||>kod_captcha
?>
Тогда прямого доступа к этому файлу не будет. Знак решетки обязателен. Просто потом при чтении данных эту решетку отрезать надо будет.
10.
Azzido (06.08.2010 / 17:07)
а ваы уверены что у вас с сессиями проблемы? а не с GD? такая же проблема была, с компьютера и почти всех браузеров все ок, а с операмини как будто кэшировалась и не обновлялась, в частности на h2m было такое, ничего в скриптах не меняя перенес на jahost и проблемы исчезли
11.
Владимир (06.08.2010 / 17:13)
10.
Azzido, тоже вариант. Тогда можно сделать текстовую капчу.
12.
delete (06.08.2010 / 17:22)
10.
Azzido, понимаеш если бы это было дело в графической библиатеке, то проблема была у всего софта, сессия применяется ж для хранения данных, тобиш кода с картинки, а вот почему она обнуляется, есть вариант что для оперы мод, для сессии кода с картинки надо устанавливать время жизни кукисов, может по дефолту они живут не долго.. достаточно поставить минут 5 для небольшой формы регистрации, если большая то время больше
p.s как вариант кешировать данные с сессии тож хороший
13.
delete (06.08.2010 / 17:28)
проблема и в том что у мода ip динамический, может когда прокси сервер оперы меняется с ним и новая сессия появляется, грешу на это почему то, сделать привязку сессии к ip во время реги, мм к реальному ip а не динамическому, или действительно где то хранить эти данные в кеше, на файле.
14.
Саня (06.08.2010 / 17:32)
10.
Azzido, Хостинг бест-хостер....
В заголовках там где code.php указан запрет кеширования.
Картинка в опере обновляется, но например на картинке "12" а в сессии записано число которое я вводил перед этим.
Думал что проблема в том что нужно удалять значение сессии картинки типа unset($_SESSION['kod']); ну тоже не помогает.
15.
delete (06.08.2010 / 17:33)
Azzido, а у тебя наверное была проблема в серверных настройках, когда сервер висит то он совершенно не держит сессию, у меня с джоном цмс на мирексе так было, авторизация слетала целый день.
16.
delete (06.08.2010 / 17:40)
14.
sanzstez, для теста напиши скрипт, выведи значение которое генерирует капча, и значение что которое сохраняется в сессии, по идеи они должны быть одинаковыми, и принудительно убивай сессию (session_destroy();) что бы при каждой новой генирации капчи, был этот буфер пуст, возможно у мода такой глюк, старые данные с сессии не замещаются новыми, поэтому и значения выходят разные.
p.s вот когда в настройках оперы, я удалял куки, и потом заходил на сайт, почему то авторизация была, выходит опера глючная, и очищается через раз и тогда и с сессией у нее непорядок.
17.
Артур (06.08.2010 / 17:57)
Знакомы проблемы эти)) так и оставил)
18.
delete (06.08.2010 / 18:06)
кстати Алькатраз насколько я помню занимался этой проблемой, вот правда не знаю смог ли её решить на джоне цмс.
19.
Azzido (06.08.2010 / 18:20)
да тут половина понописаного бредовые предположения, я же написал, капча кэшировалась причем не в браузере, запрет кэширования в скрипте так же был указан, проблема была в GD, такое наблюдал в операмини модах и некоторых браузерах мобил, нокия s40 например, но не факт конечно что здесь такая же проблема, я просто советую протестировать где нибудь ещё
20.
Саня (06.08.2010 / 18:25)
Ладенько ... пошла в ж эта мини-мод, пусть качают обычную мини, целый день сижу суть проблемы неясна - как решать хз, кроме велосипедов ничего нет. Всеравно ребята спасибо кто чем помогал.
21.
Azzido (06.08.2010 / 18:26)
20.
sanzstez, погоди, попробуй для начала текстовую капчу, проверим в чем пароблема
22.
delete (06.08.2010 / 18:39)
19.
Azzido, по твоим словам данные что генерирует скрипт и информация которая наносится на картинку, разные?
т.е надпись создалась а генератор уже новую инфу сгенерировал и она то и сохранилась в сессии? хмм
23.
Azzido (06.08.2010 / 18:48)
22.
Денис Петрович, совершенно верно, первое отображение капчи->код передаваемый в сессии и изображение совпадают, в случае если ввести неверно, то капча тупо кешируется и выводится число, которое было при первом отображении
24.
Azzido (06.08.2010 / 18:48)
вот такая вот проблема была на h2m
25.
Саня (06.08.2010 / 18:59)
24.
Azzido, походу у меня та же проблема. С текстовой капчей все пучком. Значит хост... Вот зараза. Пробовал 2 разные капчи. 0 эмоций как было так и есть проблемко. Пора на другой хост сваливать...
26.
ктулху (06.08.2010 / 19:13)
CHUMA (6 Августа 2010 / 19:13)
10. Azzido, тоже вариант. Тогда можно сделать текстовую капчу.
А смысл текстовой каптчи? от ботов не спасёт, а только юзерам усложнение
27.
delete (06.08.2010 / 19:19)
24.
Azzido, дык в том то и дело что изображение то каждый раз новое)) выходит дело не только в плохом сервере, у меня такая ерунда на всех сайтах бывает, я не думаю что джахост единственный в мире сервер с нормальными настройками)))
правда заказал ща на джахосте тестовый период, фтп не робит, панель тож неробит)) ненадо мне такого счастья.
28.
Саня (06.08.2010 / 19:24)
У меня на телефоне 3 оперы мини . Результаты теста:
1) опера 2.06 мод - не проходит капчу ни на моем сайте, ни даже на офф сайте джонцмс
2) мод 3 вырубил телефон - не удалось затестить хД
3) офф опера мини - полет нормальный и никаких проблем.
Хост... Вариант возможен, на джахост бы переехал так дополнительных доменов нету.
29.
delete (06.08.2010 / 19:28)
28.
sanzstez, ну тогда забей, в принципе единицы юзают 2.06, я на ней пишу скрипты вот сижу с ней, а другие просто посещают сайты, думаю зайти с 4 оперы что б один раз зарегаться будит не проблема, просто в реге напиши надпись что работает только с браузерам опера 4 и выше.
30.
Саня (06.08.2010 / 19:30)
Кажется причина ясна - мод меняет айпишники как перчатки - я на сайте один а по статистике топа
2. Opera (94.246.126.115)
3. Opera (94.246.126.195)
4. Opera (94.246.126.60)
31.
ктулху (06.08.2010 / 19:31)
Денис Петрович (6 Августа 2010 / 21:19)
24. Azzido,
правда заказал ща на джахосте тестовый период, фтп не робит, панель тож неробит)) ненадо мне такого счастья.
O_o по подробнее, что значит неробит? какие ошибки выдаёт в таком случае
32.
delete (06.08.2010 / 19:32)
sanzstez (6 Августа 2010 / 19:30)
Кажется причина ясна - мод меняет айпишники как перчатки - я на сайте один а по статистике топа
2. Opera (94.246.126.115)
3. Opera (94.246.126.195)
4. Opera (94.246.126.60)
дык я тебе ж об это писал выше)) просто надо брать "реальный IP", он не меняется и к нему лепить сессию.
33.
Azzido (06.08.2010 / 19:32)
возможно в твоем случае что то и с ip, но тогда вопрос почему текстовая капча работает
34.
delete (06.08.2010 / 19:34)
ShiftBHT_есть_чо7 (6 Августа 2010 / 19:31)
O_o по подробнее, что значит неробит? какие ошибки выдаёт в таком случае
к фтп не конектится, а в панеле когда вводиш логин и пароль выдает белую страницу, и вверху надпись что соединение с этой страницей не безопасное.
35.
delete (06.08.2010 / 19:37)
Azzido (6 Августа 2010 / 19:32)
возможно в твоем случае что то и с ip, но тогда вопрос почему текстовая капча работает
в общем надо сделать 2 капчи, одну графическую другую текстовую, значение должно быть у обоих капч одинаковое, если будит разное то дело в GD, если одинаковое то мистика какаято))
36.
ктулху (06.08.2010 / 19:37)
34, А, ты всё со своих древних модов оперы... какгбэ... прогресс то движется, опера 5 нормально адекватно работает.
FTP проверил, работает в штатном режиме
37.
Azzido (06.08.2010 / 19:39)
35.
Денис Петрович, что за бред еще? Суть эксперимента ясна, текстовая капча работает, графическая-нет, вывод - сессии не при чем скорей всего, а GD, хотя может и у нее какие то свои механизмы работы с сессиями я хз...
38.
delete (06.08.2010 / 19:43)
Azzido (6 Августа 2010 / 19:39)
35. Денис Петрович, что за бред еще? Суть эксперимента ясна, текстовая капча работает, графическая-нет, вывод - сессии не при чем скорей всего, а GD, хотя может и у нее какие то свои механизмы работы с сессиями я хз...
ну капчу то генерирует не GD, а фунция генерации, GD лиш рисует это значение, и как бы я клоню к тому, основываясь на твоих суждения, что данные что скрипт создает идут в сессию а на картинке рисуется данные которые в кеше)) по идеи значение текстовой капчи и графической должны совпападать т.к гениратор то у них один и тот же
39.
delete (06.08.2010 / 19:47)
ShiftBHT_есть_чо7 (6 Августа 2010 / 19:37)
34, А, ты всё со своих древних модов оперы... какгбэ... прогресс то движется, опера 5 нормально адекватно работает.
FTP проверил, работает в штатном режиме
выходит что бы работать на вашем хостинге мне надо покупать новый телефон, а еще лутше смартфон, т.к в 5 опере нет фтп менеджара и SSH.
p.s учетку можиш удалять, я на тестился уже)))
40.
Саня (06.08.2010 / 19:48)
Все народ харош споров. Всем спасибо за обсуждение проблемы. Решено забить. ))
если и на сайте джонцмс такая же беда, то значит опера кака - разработчики движка не допустили бы такой оплошности если бы ее можно было исправить.
41.
Дмитрий (06.08.2010 / 20:01)
При обращение к файлу каптчи в путь до файла допишите ?' . mt_rand(1, 999) . ' должно помочь
42.
ramzes (06.08.2010 / 20:23)
sanzstez (6 Августа 2010 / 18:25)
Ладенько ... пошла в ж эта мини-мод, пусть качают обычную мини, целый день сижу суть проблемы неясна - как решать хз, кроме велосипедов ничего нет. Всеравно ребята спасибо кто чем помогал.
покажи заголовки
43.
Саня (06.08.2010 / 20:40)
41.
ПьяНый Ангел, ок попробую
44.
Дмитрий (06.08.2010 / 20:42)
43.
sanzstez, почему это? ты наверное плохо понял что я написал, прочти ещё раз
просто будет генерироватся случайно число около адреса картинки, и картинка не будет кешироваться, и тогда не должно быть проблем
45.
Саня (06.08.2010 / 20:48)
Это я вдуплил сразу и отредачил сообщение - мозг уже не варит, сории ))
46.
delete (06.08.2010 / 20:50)
или выводят на картинку не данные с генератора а то что в сессии записано, т.е с начала данные помещают в сессию а потом читаю ее и то значение пишут на картинке, мм как бы тогда врятли ошибка получится.
47.
Саня (06.08.2010 / 20:55)
в сессии и на картинке цифры разные . А при вводе с капчи в сессии вопще левая цифра (даже на картинке не было)
Заголовки
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', FALSE);
header("Content-type: image/png");
48.
Саня (06.08.2010 / 21:00)
44.
ПьяНый Ангел, не помогло,но я и не надеялся
49.
ramzes (06.08.2010 / 21:02)
Header('Pragma: no-cache');
у меня еще стоит, вроде не кешируется
50.
Саня (06.08.2010 / 21:06)
Да изображение не кешируется - обновляется, просто мод оперы непонятно каким макаром сессию держит и изза этого траблыы
51.
delete (06.08.2010 / 21:09)
генерируем рандомое число и заносим в сессию
$_SESSION['cod'] = rand(1111, 9999);
потом $_SESSION['code'] выводим на экран, как картинку.
а сравниваем тогда $_SESSION['code'] & $_POST['provcode']
52.
Studentsov (06.08.2010 / 21:11)
Денис Петрович (6 Августа 2010 / 19:47)
выходит что бы работать на вашем хостинге мне надо покупать новый телефон, а еще лутше смартфон, т.к в 5 опере нет фтп менеджара и SSH.
p.s учетку можиш удалять, я на тестился уже)))
Я ж говорил, что говнохост
53.
ramzes (06.08.2010 / 21:11)
на каптче число есть? если есть то сессия не при чем, для проверки можешь вывести чило из сесси, хотя число вообще можно не менять же, с одной сесси одно число
54.
delete (06.08.2010 / 21:13)
Студент_trollface (6 Августа 2010 / 21:11)
Я ж говорил, что говнохост
теперь лично убедился, хорошо что оплатить не успел)
55.
Azzido (06.08.2010 / 21:24)
мне все же кажется дело в GD
56.
ктулху (06.08.2010 / 21:27)
Вы бы ещё с нокии 3310 сидели, умники. Вообще-то никакого намёка на WAP в хостинге нет
URL:
https://visavi.net/topics/12352