[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: "Модернизация" google-перевода
A.V.
Здравствуйте.
Помогите, пожалуйста, разобраться и решить задачу.

Задача следующая:

встроить на сайт автматический google-переводчик...

Нашёл в Сети такой код

<script type="text/javascript" src="http://www.google.com/jsapi"></script>

<
script type="text/javascript">
google.load("language", "1");

function eng() {
var text = document.getElementById('text').value;
google.language.translate(text, 'ru', 'en', function(result) {
if(result.translation) {
document.getElementById('trans').innerHTML = result.translation;
}
}
);
}

</script>


<button class="but" onclick="eng()"> на английский </button>
<div
id="trans"></div>


Здесь всё в порядке, переводит, вставляет через innerHTML на страницу перевод.

Но необходимо, чтобы перевод не отображался, а заносился в базу данных. То есть:
по submit-кнопке по событию onclick выполянется google-перевод POST-данных одной textarea и вместе с этим выполняется положенная обработка формы, некий PHP-сценарий. Затем все данные + перевод заносятся в БД.

Буду очень признателен за помощь.



Спустя 1 час, 15 минут, 43 секунды (22.11.2010 - 22:42) sharki написал(а):
Ты хочешь с помощью jquery реализовать? или на чистом ajax?
Всё это делает ajax'oм

Если jquery то там несколько строк, а если чистым то там умножь все это на 3))

Спустя 7 минут, 52 секунды (22.11.2010 - 22:50) A.V. написал(а):
sharki

да мне без разницы, можно и на jquery.

Вы сможете помочь?

Спустя 44 минуты, 21 секунда (22.11.2010 - 23:34) sharki написал(а):
Поробую, как я понял result.translation в этой переменной находится сам текст?
Идея такова,
1) сначала создаешь файл обработчик на PHP он должен будет заносить полученные данные методом POST а именно, id документа, и сам текст (дальше сам что хочешь добавишь)
2) отправляем с помощью AJAX полученные данные методом пост обработчику который ты уже создашь и принимаешь ответ с обработчика типа" успешно добавлено в базу"

И немножко реализации.
Подключаем jquery можно урезанный jquery.min

Как будет выглядеть отправка\запрос:


<script type="text/javascript">
google.load("language", "1");

function eng() {
var text = document.getElementById('text').value;
google.language.translate(text, 'ru', 'en', function(result) {
if(result.translation) {

$.ajax({
var id = <? echo $_GET['page']; ?> // здесь мы получаем текущию страничку
// где мы находимся, это я примерно описываю, там можешь сам.

type: "POST",
url: "translate.php",
data: ({id : id, text: result.translation }), // тут как раз и инициируются переменные которые ты отправишь.
// Ловить их надо $_POST['id'] and $_POST['text'];

success: function(data){ // при успешной отправке данных, тебе в переменную data придет ответ обработчика
// и ты дальше что хочешь с ним делай

$("#trans").html(data); //например вставили ответ в блок с id trans
}
}
);
}
}
);
}



А в обработчике поймаешь так:

if ( isset($_POST['id'], $_POST['text'])) {
// если существуют эти переменные то сделать с ними...
}

Не уверен что получится, но ты попробуй поиграйся с переменными и т.д

Спустя 1 день, 23 часа, 52 минуты, 34 секунды (24.11.2010 - 23:27) A.V. написал(а):
sharki,

сделал немного по другому, но всё равно спасибо за помощь.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.