X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Google Translate + PHP
SEVI
SEVI
Topic Starter сообщение 12.3.2011, 21:51; Ответить: SEVI
Сообщение #1


Доброго времени суток!
Дело в том что мне понадобился скрипт, который переводит текст (без перехода на гул транслэйт) с помощью Google Translate.
Я написал вот такой скрипт:
[PHP]<?php
if(isset($_POST['text'])) {
$text = $_POST['text'];
$url ='http://translate.google.com.ua/translate_t';
$data = array(
'text' => $text,
'sl' => 'ru',
'tl' => 'en',
'prev' => 'hp',
'js' => 'n'

);

$options = array(
'http' => array(
'method' => 'GET',
'header' => "User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET CLR 4.0.20506)
Content-Type: 'text/plain; charset=UTF-8\r\n\r\n"
)

);
$context = stream_context_create($options);
$url .= '?' . http_build_query($data);

$res = file_get_contents($url, null, $context);
$res = explode('<span id=result_box class="short_text">',$res);
$get = explode('</span>',$res[1]);
$get[0] = strip_tags($get[0]);
echo $get[0];
echo $get[0];
}
?>
</br>
<form method="POST">
<textarea name="text"></textarea></br>
<input type="submit" />
</form>
[/PHP]
Но он меня не устраивает, потому что он не передает большие тексты. Прошу подсказать мне, как переделать его на метод ПОСТ. (Гугл АПИ не предлагать). Заранее спасибо!
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
SEVI
SEVI
Topic Starter сообщение 12.3.2011, 22:29; Ответить: SEVI
Сообщение #2


кто нибудь делал такое???
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Webmaster_hb
Webmaster_hb
сообщение 12.3.2011, 23:20; Ответить: Webmaster_hb
Сообщение #3


SEVI, сам не делал, но не вижу проблемы,
зайди на Google Translate - введи очень много текста, нажми перевести,
страница перезагрузится и в форме останется уже метод POST а не GET
останется посмотреть какие параметры они передают
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
SEVI
SEVI
Topic Starter сообщение 13.3.2011, 15:18; Ответить: SEVI
Сообщение #4


спасибо за идею. буду дерзать))
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
SEVI
SEVI
Topic Starter сообщение 13.3.2011, 17:53; Ответить: SEVI
Сообщение #5


Теперь у меня проблемы сновым скриптом:
1. Приходят знаки вопроса (пробема с кодировкой)
2. Не посылает больше 3-х строк.
Вот код:
[PHP]<?php
if(isset($_POST['text'])) {
header("charset=UTF-8");
$text = $_POST['text'];
$url = "http://translate.google.com/translate_t?ie=UTF-8&hl=uk&sl=en&tl=ru&js=n&prev=_t";
$parse_url = parse_url($url);
$path = "/translate_t";
$host= "translate.google.com";
$data = "text=".urlencode($text);
$path .= "?hl=uk&sl=ru&tl=en";
$fp = fsockopen($host, 80, $errno, $errstr, 10);
if ($fp)
{
$out = "POST ".$path." HTTP/1.1\n";
$out .= "Host: ".$host."\n";
$out .= "Referer: ".$url."/\n";
$out .= "User-Agent: Opera\n";
$out .= "Content-Type: application/x-www-form-urlencoded\n";
$out .= "Content-Length: ".strlen($data)."\n\n";
$out .= $data."\n\n";
$i=0;
fputs($fp, $out);
while($gets=fgets($fp,2048))
{
$her .= $gets;
if($i > 30){
if($gets == "" or $gets == 0) {
break;
}
}
$i++;
}
fclose($fp);
}
ECHO '<meta content="text/html; charset=UTF-8" http-equiv="content-type">';
$res = explode('<span id=result_box class="short_text">',$her);
$get = explode('</div>',$res[1]);
$get[0] = strip_tags($get[0]);
echo nl2br($get[0]);
}
?>
</br>
<form method="POST">
<textarea name="text" COLS="40" ROWS="40"><?php echo $_POST['text']; ?></textarea></br>
<input type="submit" />
</form>[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
SEVI
SEVI
Topic Starter сообщение 13.3.2011, 19:37; Ответить: SEVI
Сообщение #6


Плз помогите! Срочно надо
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
LifeUP
LifeUP
сообщение 14.3.2011, 11:29; Ответить: LifeUP
Сообщение #7


Скачайте файлы:
- jquery
- jquery.translate (http://code.google.com/p/jquery-translate/)

Как работает:
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="jquery-1.5.min.js"></script>
<script type="text/javascript" src="jquery.translate-1.4.7-debug-all.js"></script>
<script type="text/javascript">
$(function(){
$('a').click(function(){
var at = $(this).attr('id');
$('body').translate(at);
});

});
</script>
</head>
<body>
<div>
<a id="ru" href="#">ru</a>
<a id="en" href="#">en</a>
</div>
<div>
Правила SMS голосования в рейтинге, пункт 14.
Правила оказания услуги для оператора MTS
* Для абонентов всех национальных GSM операторов Украины. СМС на номер 4444– 2,00 грн, 4446– 8,00 грн, 4449– 16 грн, 4161– 30 грн. Тариф в гривнах с учетом НДС. Дополнительно удерживается сбор в пенсионный фонд в размере 7,5% от стоимости услуги без учета НДС.
Услугу предоставляет ООО «АйФри Украина». 03124, г. Киев, ул. Н. Василенко 7А. Служба поддержки: +38 044 545 77 03
** Более полную информацию о тарифах операторов можно узнать на сайте наших партнеров www.payhelp.ru
Стоимость доступа к услугам контент-провайдера устанавливается Вашим оператором. Подробную информацию можно узнать: - в разделе «Услуги по коротким номерам» на сайте www.mts.ru или обратившись в контактный центр по телефону 8 800 333 0890 (0890 для абонентов МТС)
</div>
</body>
</html>


И не надо никакого php
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
SEVI
SEVI
Topic Starter сообщение 14.3.2011, 14:42; Ответить: SEVI
Сообщение #8


спасибо большое!

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Если статья не в индексе Google - она уникальна или нет?
6 uahomka 1586 Вчера, 15:37
автор: Arsenwenger
Горячая тема (нет новых ответов) Продажа аккаунтов - Gmail.com I Google+
аккаунты, Gmail Google+, не дорого
64 KYBERGURU73 51769 19.4.2024, 22:52
автор: KYBERGURU73
Открытая тема (нет новых ответов) ⭐⭐⭐ Google Voice | Gmail - OLD аккаунты "SMS и звонки" ⭐⭐⭐
15 Chekon 4467 18.4.2024, 12:00
автор: Chekon
Горячая тема (нет новых ответов) Google запускает новый браузер элементами искусственного интеллекта
38 arendator 13498 21.3.2024, 18:10
автор: Rebex
Открытая тема (нет новых ответов) Сайт не индексируется в Google без добавления ссылок в адурилку
4 Nekit 1086 20.3.2024, 21:44
автор: MorKer


 



RSS Текстовая версия Сейчас: 25.4.2024, 5:38
Дизайн