ПОМОГИТЕ ВСТАВИТЬ ТЕКСТ

Обсуждение работы системы JetSwap. Общий форум для всех вопросов, для которых не создано отдельных форумов.
Аватара пользователя
alerzo
Сообщения: 330
Зарегистрирован: 27 ноя 2010, 14:43
Контактная информация:

Re: ПОМОГИТЕ ВСТАВИТЬ ТЕКСТ

Непрочитанное сообщение alerzo »

а на php ?

Код: Выделить всё

<?php
/*
$filename - полный путь к файлу
$apikey   - ключ для работы
$rtimeout - задержка между опросами статуса капчи
$mtimeout - время ожидания ввода капчи

включить/выключить verbose mode (комментирование происходящего):
$is_verbose - false(выключить),  true(включить)

дополнительно (дефолтные параметры править не нужно без необходимости):
$is_phrase - 0 либо 1 - флаг "в капче 2 и более слов"
$is_regsense - 0 либо 1 - флаг "регистр букв в капче имеет значение"
$is_numeric -  0 либо 1 - флаг "капча состоит только из цифр"
$min_len    -  0 (без ограничений), любая другая цифра указывает минимальную длину текста капчи
$max_len    -  0 (без ограничений), любая другая цифра указывает максимальную длину текста капчи
$is_russian -  0 либо 1 - флаг "капча должна демонстрироваться только русскоязычным работникам"

пример:
$text=recognize("/path/to/file/captcha.jpg","ваш_ключ_из_админки",true,"antigate.com");

$text=recognize("/path/to/file/captcha.jpg","ваш_ключ_из_админки",false,"antigate.com");  //отключено комментирование

$text=recognize("/path/to/file/captcha.jpg","ваш_ключ_из_админки",false,"antigate.com",1,0,0,5);  //отключено комментирование, капча состоит из двух слов, общая минимальная длина равна 5 символам

*/



function recognize(
            $filename,
            $apikey,
            $is_verbose = true,
            $domain="antigate.com",
            $rtimeout = 5,
            $mtimeout = 120,
            $is_phrase = 0,
            $is_regsense = 0,
            $is_numeric = 0,
            $min_len = 0,
            $max_len = 0,
            $is_russian = 0
            )
{
	if (!file_exists($filename))
	{
		if ($is_verbose) echo "file $filename not found\n";
		return false;
	}
    $postdata = array(
        'method'    => 'post', 
        'key'       => $apikey, 
        'file'      => '@'.$filename, //полный путь к файлу
        'phrase'	=> $is_phrase,
        'regsense'	=> $is_regsense,
        'numeric'	=> $is_numeric,
        'min_len'	=> $min_len,
        'max_len'	=> $max_len,
        
    );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,             "http://$domain/in.php");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,     1);
    curl_setopt($ch, CURLOPT_TIMEOUT,             60);
    curl_setopt($ch, CURLOPT_POST,                 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS,         $postdata);
    $result = curl_exec($ch);
    if (curl_errno($ch)) 
    {
    	if ($is_verbose) echo "CURL returned error: ".curl_error($ch)."\n";
        return false;
    }
    curl_close($ch);
    if (strpos($result, "ERROR")!==false)
    {
    	if ($is_verbose) echo "server returned error: $result\n";
        return false;
    }
    else
    {
        $ex = explode("|", $result);
        $captcha_id = $ex[1];
    	if ($is_verbose) echo "captcha sent, got captcha ID $captcha_id\n";
        $waittime = 0;
        if ($is_verbose) echo "waiting for $rtimeout seconds\n";
        sleep($rtimeout);
        while(true)
        {
            $result = file_get_contents("http://$domain/res.php?key=".$apikey.'&action=get&id='.$captcha_id);
            if (strpos($result, 'ERROR')!==false)
            {
            	if ($is_verbose) echo "server returned error: $result\n";
                return false;
            }
            if ($result=="CAPCHA_NOT_READY")
            {
            	if ($is_verbose) echo "captcha is not ready yet\n";
            	$waittime += $rtimeout;
            	if ($waittime>$mtimeout) 
            	{
            		if ($is_verbose) echo "timelimit ($mtimeout) hit\n";
            		break;
            	}
        		if ($is_verbose) echo "waiting for $rtimeout seconds\n";
            	sleep($rtimeout);
            }
            else
            {
            	$ex = explode('|', $result);
            	if (trim($ex[0])=='OK') return trim($ex[1]);
            }
        }
        
        return false;
    }
}
?> 

Аватара пользователя
Support
Служба поддержки
Сообщения: 4558
Зарегистрирован: 08 фев 2009, 19:24
Откуда: JetSwap
Контактная информация:

Re: ПОМОГИТЕ ВСТАВИТЬ ТЕКСТ

Непрочитанное сообщение Support »

Пока это не сделаем мы, ничего работать не будет из-за того, что картинку надо вам как-то получить будет.
С уважением, Служба поддержки.
http://www.jetswap.com

Ответить