Ввести каптчу во время выполнения php скрипта - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.4409
BTC/USD64738.8598
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 23.04.2009, 15:52   #1
Hector
hustle
 
Аватар для Hector
 
Регистрация: 02.05.2008
Адрес: 3d world
Сообщений: 12,890
Бабло: $1717315
Отправить сообщение для Hector с помощью Jabber
По умолчанию Ввести каптчу во время выполнения php скрипта

Скрипт проходит этапы регистрации и доходит до каптчи. Теперь мне нужно выплюнуть картинку каптчи (я ее на сервер сохраняю) и форму для ввода ее значения.

Походу нужно как-то яваскриптом? Как это сделать в одном скрипте, в одном файле?
Hector вне форума  
Старый 23.04.2009, 15:53   #2
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,230
Бабло: $247845891
По умолчанию

На умаксе была такая тема
imgreen вне форума  
Старый 23.04.2009, 15:55   #3
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,230
Бабло: $247845891
По умолчанию

http://umaxforum.com/showthread.php?...5+%E2%E5%F9%E8
imgreen вне форума  
Старый 23.04.2009, 15:57   #4
Hector
hustle
 
Аватар для Hector
 
Регистрация: 02.05.2008
Адрес: 3d world
Сообщений: 12,890
Бабло: $1717315
ТС -->
Отправить сообщение для Hector с помощью Jabber
автор темы ТС По умолчанию

Цитата:
Сообщение от imgreen Посмотреть сообщение
На умаксе была такая тема
Вот смотрю - не могу найти. Буду благодарен если тыкнешь носом.

добавлено: Ага читаю. Всё понял, только разбивать на части. Так и думал.
Hector вне форума  
Старый 23.04.2009, 22:14   #5
AlexWM
Ебланнед
 
Регистрация: 25.04.2008
Сообщений: 101
Бабло: $10120
По умолчанию

Цитата:
Сообщение от Hector Посмотреть сообщение
Вот смотрю - не могу найти. Буду благодарен если тыкнешь носом.

добавлено: Ага читаю. Всё понял, только разбивать на части. Так и думал.
Зачем циклить? Запустил пост данные на обработку регистартору получил капчу выел ее с формой для ввода, ее ответ отправляют обратно. И процес повторяется..
AlexWM вне форума  
Старый 23.04.2009, 22:45   #6
deschain
Senior Member
 
Аватар для deschain
 
Регистрация: 01.11.2007
Сообщений: 2,269
Бабло: $288535
По умолчанию

Доходишь скриптом до нужного места, сохраняешь куки в файл, сохраняешь капчу, скрипт останавливаешь. показываешь юзеру капчу, после ввода капчи, скрипт берет эту же куку и забивает капчу, идет дальше.

или другой вариант:
скрипт доходит до капчи, сохраняет её в файл, а сам уходит в цикл на предмет проверки заполненности определенного текстового файла, капча выводится юзеру аяксом на экран. юзер вводит капчу, код капчи сохраняется в этот текстовый файл, скрипт это видит, читает файл и забивает код капчи и идет дальше.
deschain вне форума  
Старый 24.04.2009, 00:31   #7
azgard
Senior Member
 
Аватар для azgard
 
Регистрация: 14.11.2008
Сообщений: 184
Бабло: $13920
По умолчанию

сохраняешь
отправляешь на анти-капчу
получаешь ответ
идёшь дальше


отправление капчи
PHP код:
function add_cap($filename
{
   
$postdata = array(
        
'method'    => 'post'
        
'key'       => 'тут твой кей'
        
'file'      => '@'.$filename//полный путь к файлу
        
'phrase'     => '0',
        
'regsense'     => '1',
        
'numeric'     => '0',
        
'min_len'     => '0',
        
'max_len'     => '0',       
    );
    
$ch curl_init();
    
curl_setopt($chCURLOPT_URL,             'http://www.anti-captcha.com/in.php');
    
curl_setopt($chCURLOPT_RETURNTRANSFER,     1);
    
curl_setopt($chCURLOPT_TIMEOUT,             60);
    
curl_setopt($chCURLOPT_POST,                 1);
    
curl_setopt($chCURLOPT_POSTFIELDS,         $postdata);
    
$result curl_exec($ch);
    
$ex explode("|"$result);
    
$captcha_id = @$ex[1];    
    return @
$captcha_id

забираем код
PHP код:
function get_cap($captcha_id)
{
    
$x=0;
    
$ch=curl_init('http://anti-captcha.com/res.php?key=тут_твой_кей&action=get&id='.$captcha_id);
    
curl_setopt($chCURLOPT_RETURNTRANSFER,     1);
    
curl_setopt($chCURLOPT_TIMEOUT,             60);    
     while(
true)
    {
        
         
$result curl_exec($ch);
        if (
strpos($result'ERROR')!==false)
        {
            return 
false;
        }
        if (
$result=="CAPCHA_NOT_READY")
        {
             
sleep(5);
        }
        else
        {
             
$ex explode('|'$result);
             if (
trim($ex[0])=='OK') return trim($ex[1]);
        }
        
$x++;
        if(
$x>10)
            break;
    }    

и тогда не надо её выводить )
__________________
icq 353-220-557
жаба на мобе [email protected]
azgard вне форума  
Старый 04.05.2009, 21:32   #8
Nosfer
n/a
 
Аватар для Nosfer
 
Регистрация: 18.02.2009
Сообщений: 162
Бабло: $46620
По умолчанию

кто-нибудь знает как аналогичное на перле написать?
Nosfer вне форума  
Старый 05.05.2009, 20:39   #9
Bananz
Техноманьяк
 
Регистрация: 12.02.2009
Сообщений: 118
Бабло: $6200
Отправить сообщение для Bananz с помощью ICQ
По умолчанию

на антикапче же есть примеры
мне LWP лень вспоминать
Bananz вне форума  
Старый 05.05.2009, 21:09   #10
Nosfer
n/a
 
Аватар для Nosfer
 
Регистрация: 18.02.2009
Сообщений: 162
Бабло: $46620
По умолчанию

Цитата:
Сообщение от Bananz Посмотреть сообщение
на антикапче же есть примеры
мне LWP лень вспоминать
нету, даже на тикет накатал, все равно мимо
Nosfer вне форума