Обновление капчи

Статус
В этой теме нельзя размещать новые ответы.

proWoke

Новичок
Обновление капчи

Здравствуйте. Как мне сделать так, чтобы была кнопочка "обновить капчу" и при нажатии, обновлялась только капча, а не вся страница. Это делается на js? Подскажите, пожалуйста.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
нужно по клику на линке
обновить src изображения.

-~{}~ 29.09.10 04:39:

а, и дописав туда ?time
чтоб изображение не кешировалось.
 

iceman

говнокодер
http://ru.wikipedia.org/wiki/AJAX

<img src="..." id="capcha" />
<a href ="#" onclick="..."></a>
 

ХакИрФсимагущий

[засикречино]
какой аякс просто в он клик написать функцию которая заменит катинку каптчи
document.getElementById("capcha").src= адрес картинки каптчи
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
ХакИрФсимагущий
Дирол? Орбит?
 

ХакИрФсимагущий

[засикречино]
???
Если для вас это какоето чюдо то посмотрите как при клике отоображаются фото на vitanail.ru там даже для меня не так все привычно выглядит.
А способ работы над html обьектом класический, есть еше вариант работы с DOM.
 

Ragazzo

TDD interested
ХакИрФсимагущий
>>src= адрес картинки каптчи
ты заготавливаешь в фотошопе вагон и тележку картинок капчи?и НЕ формируешь их скриптом..да?
 

ХакИрФсимагущий

[засикречино]
хмм кто вам такое сказал?
Ааа ясно вы неправильной каптчей пользуетесь)))
Вот пример правильной картинки каптчи:
Правда я ее написал год назад не думал о кеширывании, если кешируется то уверяю вас это недочет столетней давности который лень править))
___http://vitanail.ru/posting.php?type=image (ненадо ссылок)
 

Ragazzo

TDD interested
ХакИрФсимагущий
еще бы на белом фоне черные циферки в ряд выстроил бы)
 

ХакИрФсимагущий

[засикречино]
Ага для удобства распознавания роботами))))
вот каптчю таково вида 11.jpeg?c=%C2%DA%A5%C2%DA%A5
и сканирывать для спам атак не надо)))
Подобная на 1С битрикс используется
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
ХакИрФсимагущий
1. я о том, что уже все сказано для тебя. При наличии мозгов решение нагугливается в 2 минуты.
2. Еще один раз я увижу ссылку на этот сайт будешь почетным мембером readonly team.
3. Учи русский. Альтернативный ты наш.
 

tz-lom

Продвинутый новичок
экхм,Mr_Max,Ragazzo,а ведь ХакИрФсимагущий прав,самый правильный способ это генерить капчу каждый раз новую при запросе изображения,это позволяет даже перезагружая страницу обновлять её (а ведь всегда найдётся пачка слепых которые прошляпят кнопку "обновить капчу")
 

Ragazzo

TDD interested
tz-lom
вопрос стоит в том как он ее генерит, а не в том что ее нужно каждый раз генерить...
 

ХакИрФсимагущий

[засикречино]
tz-lom
Да в том-то и дело что как генерит))) удивляюсь вам что вы это не поняли. Дело в том сто некоторые весте с названием картинки зашифрованный код передают как в 1с битрикс например, что не есть правильно

Mr_Max
1.Да без проблем в след раз на другой сайт на моем движке ссылку оставлю))). ИМХО не вижу проболемы я не всегда галочку отключаю чтобы на меил спам не шол, а ты говоришь что бы шалочку урл отключвал. Да и вообше какая тебе разница какие ссылки я оставляю они все по теме и ту ссылку кторую ты не сделал активной я вообше и не хотел чтобы она была активной, нафиг мне ссылка на ту часть которая закгыта в роботс.тхт
3.Ах да, одним сайтом о русском языке теперь стало меньше))).

ПС я знаю только русский язык и английский самую малость.

-~{}~ 29.09.10 20:47:

Mr_Max
2.Ааа я кажется понял вы своим постом закрыли тему для обсуждения ну извините, что пару вариантов подкинул и затмил вашь пост.))

И еше своим первым постом я не к вам обрашался а к тому кто посоветывал аяксом пользоватся.
Совсем забыл. Я не то, что бы не альтернативный я не ваш)))).
 

Духовность™

Продвинутый новичок
какой аякс просто в он клик написать функцию которая заменит катинку каптчи
document.getElementById("capcha").src= адрес картинки каптчи
+1
Я сам так делаю. URL картинки: http://www.server.ru/captcha/?PHPSESSID=lufa4dhhscn68rq8lpvhhjshl3

В самом скрипте:

PHP:
<?php
class Module_Captcha_Controller_Main extends Module_Captcha_Controller_Common
{
    public function run()
    {
        parent::common();

        $this->getResponse()->setHeader('Content-type', 'image/png');

        if (!isset($this->getRequest()->getRequest()->{session_name()}))
        {
            exit;
        }

        $Base_Session = Base_Session::getInstance();

        $captcha = new Module_Captcha_Model_Captcha(Base_Registry::getInstance()->path['font'].'ASmperCmUp.ttf');

		$Base_Session->code = $captcha->getCode();

		$captcha->make();

		return $captcha;
    }
}
?>
 

Ragazzo

TDD interested
triumvirat
рефакторинг не помешал бы)
и страница у вас вся приетом перезагружается, так ведь?
 

ХакИрФсимагущий

[засикречино]
Ragazzo
У него страница перзагружается только вот страница это не совсем страница браузер думает, что это картинка. А сама страница с формой стоит на месте и ниче не делает.
 

proWoke

Новичок
Автор оригинала: triumvirat
+1
Я сам так делаю. URL картинки: http://www.server.ru/captcha/?PHPSESSID=lufa4dhhscn68rq8lpvhhjshl3

В самом скрипте:

PHP:
$this->getResponse()->setHeader('Content-type', 'image/png');

if (!isset($this->getRequest()->getRequest()->{session_name()}))
{
     exit;
}

$Base_Session = Base_Session::getInstance();

$captcha = new Module_Captcha_Model_Captcha(Base_Registry::getInstance()->path['font'].'ASmperCmUp.ttf');

$Base_Session->code = $captcha->getCode();

$captcha->make();
Я вообще тут ни строчки кода не понял.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху