PHP

Русско-английский переводчик, с помощью Google AJAX Language API

Google предоставляет разработчикам массу возможностей для работы со своими сервисами. Как вы наверное поняли из названия поста, я буду использовать Google AJAX API. Что же это такое и для чего это нужно можно прочитать здесь и здесь. Для работы нам понадобятся: php и jQuery.

Создадим 2 файла index.php и translate.php. В файле index.php у нас будет поле, в которое будет вводиться текст для перевода и область в которой будет отображаться переведенный тест.

index.php

<html>
    <head>
        <title>Русско-английский переводчик</title>
        <script src='../js/jquery.js' type='text/javascript'></script>
        <script type="text/javascript">
         $(function() {
            $('#translate').click(function() {
                var text = $('#source').val();
                $.ajax({
                    url: 'translate.php',
                    type: 'POST',
                    data: 'text=' + text,
                    success: function(html) {
                    $("#enText").html(html);    
                    }
                });
            });
         });
        </script>
        <style type="text/css">
        #wrap {
        margin: auto;
        width:700px;
        }
        #ruText {
        float:left;
        }
        #enText {
        margin-left:350px;
        }
        </style>
    </head>
    <body>
    <div id="wrap">
        <div id="ruText">
            <textarea id="source" rows="5" cols="39"></textarea> <br />
            <input id="translate" type="submit" value="Перевести" />
        </div>
        <div id="enText">
         
        </div>
    </div>
    </body>
</html>


Файл translate.php. Здесь мы с помощью cURL’a передаем текст на перевод. После чего, вырезаем переведенный текст и выводим в div с id=»enText».

translate.php

<?php
$text = urlencode($_POST['text']);
$ch = curl_init('http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=' . $text . '&langpair=ru%7Cen&callback=foo&context=bar');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, '1');
preg_match('|"translatedText":"(.*?)"|is', curl_exec($ch), $result);
curl_close($ch);
echo $result['1'];
?>
Теги:
translate, script, enText, function, текст, будет, index, title, javascript, Google, result, textarea, ruText, margin, style, source, здесь, работы, перевод, передаем, После, выводим, вырезаем, помощью, Здесь, input, submit, value, Перевести, urlencode, services, match, RETURNTRANSFER, translatedText, предоставляет
Добавлено: 27 Февраля 2015 07:59:44 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...