Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Добрый день

Есть код на PHP в который передается 3 переменные: язык с которого переводим,язык на который переводим и само слово (фразу) для перевода. Этот скрипт будет запускаться из консоли под WinXP. Переведенные данные нужно вставить в таблицу на MySQL (тоже под виндой). У меня не получается переделать этот код таким образом чтобы его можно было использовать хотя бы для европейских языков. У меня проблемы с кодировками. Я немогу разобраться в какой кодировке приходит переведенный текст и как его вставить в таблицу чтобы при этом сохранились специальные символы для разных языков. Например приходит перевод на немецкий ändern. Буква ä у меня пропадает или заменяется на другой символ. Также и французкие é ê и так по разным языкам.

Теперь что нужно:

Нужен один скрипт в который будут передаваться слова как на кириллице так и на разных языках и из которого нужно вставлять переведенные фразы в таблицы MySQL без потери спец.символов.Напомню что скрипт будет запускаться из консоли под WinXP. Также мне нужно знать в какой кодировке делать таблицу в которую будут вставляться фразы.

Возможно это связано с кодировками винды. Под Unix вродебы все отображается правильно.

Описание Google API translate http://code.google.com/intl/ru/apis/ajaxlanguage/documentation/

как аботает http://translate.google.com.ua/translate_t?hl=ru&sl=ko#ru|fr|

Далее привожу сам код:

function translate($s_text, $s_lang, $d_lang){

//$s_text = iconv("windows-1251", "utf-8", $s_text);

$post_data['q']=$s_text;

$post_data['langpair']=$s_lang."|".$d_lang;

$query=http_build_query($post_data);

$url = "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0";

$c = curl_init();

curl_setopt($c, CURLOPT_URL, $url);

curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($c, CURLOPT_POST, 0);

curl_setopt($c, CURLOPT_POSTFIELDS, $query);

$b = curl_exec($c);

curl_close($c);

$json = json_decode($b, true);

if ($json['responseStatus'] != 200)return false;

return $json['responseData']['translatedText'];

}

$e = translate('Changed', 'en', 'de');

//$e = iconv("utf-8", "cp850", $e);

echo ($e);

?>

16 лет назад
stes
17 лет в сервисе
Был
15 лет назад

Заявки фрилансеров

Нет заявок фрилансеров