Якщо все працює добре, і раптом його немає, то одним з можливих варіантів є те, що у вас проблеми з вашим перекладом провайдера (інші: деякі конфігурації був змінений, новий мод додав, деякий програмне забезпечення оновлюється).
Існує дуже простий спосіб, щоб перевірити чи є у вас проблеми з Google API v1 чи це десь ще. Щоб перевірити це, будь ласка просто створити новий PHP файл з таким змістом:
Цей файл можна знайти в vBET пакет в do-not-upload/tools/googletest.php
PHP Code:
<?php
echo "Starting translation test for Google API v1<br/>\n";
$connection = curl_init();
curl_setopt($connection, CURLOPT_URL, 'http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&format=html&langpair=pl|en&q=witaj');
curl_setopt($connection, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)');
//curl_setopt($connection, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($connection, CURLOPT_RETURNTRANSFER, 1);
$time = microtime(true) * 1000;
$result = curl_exec($connection);
$time = microtime(true) * 1000 - $time;
echo 'Test result: '.$result."<br/>\n";
echo 'Test error: '.curl_error($connection)."<br/>\n";
curl_close($connection);
echo 'Connection time (ms): '.$time;
?>
У випадку, якщо ви використовуєте Google API v2 використовувати цей код - і цей файл буде включений у нашому наступному випуску:
PHP Code:
<?php
require_once('./global.php');
echo "Starting translation test for Google API v2<br/>\n";
$connection = curl_init();
curl_setopt($connection, CURLOPT_URL, 'https://www.googleapis.com/language/translate/v2?key='.$vbulletin->options['vbenterprisetranslator_googleapikeyv2'].'&format=html&q=witaj&target=en');
curl_setopt($connection, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)');
//curl_setopt($connection, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($connection, CURLOPT_RETURNTRANSFER, 1);
$time = microtime(true) * 1000;
$result = curl_exec($connection);
$time = microtime(true) * 1000 - $time;
echo 'Test result: '.$result."<br/>\n";
echo 'Test error: '.curl_error($connection)."<br/>\n";
curl_close($connection);
echo 'Connection time (ms): '.$time;
?>
Завантажте його на ваш сервер (ваш форум корінь) і поставити посилання на нього на своєму браузері. Якщо все гаразд, ви отримаєте відповідь:
Code:
Starting transaltion test
Test result: {"responseData": {"translatedText":"Welcome"}, "responseDetails": null, "responseStatus": 200}
Test error:
Як бачите, помилки не мають значення і результат мають статус 200. Це означає: все в порядку.
Якщо ви де заблоковані відповідь від Google буде виглядати так:
Code:
{"responseData": null, "responseDetails": "Suspected Terms of Service Abuse, please contact ajaxapis-support@google.com.", "responseStatus": 403}
Якщо ви десь заблокований - просто напишіть Google, як мовиться в посланні. Це дозволить знайти наш розум, можливо, це якась помилка, можливо, у вас буде щось змінити, щоб відповідати краще TOS Google. Принаймні Google легко дає доступ назад, коли питання вирішується 
Якщо у вас є проблеми в мережі, то результат буде порожнім і помилок скаже вам, що відбувається (тобто: Не вдалося вирішити ім'я вузла "ajax.googleapis.com '). Зверніть увагу, в такому випадку він може бути час, перш ніж ви побачите вихід (до з'єднання приурочена вгору).
Мережа проблеми приклад:
Code:
Starting translation test
Test result:
Test error: Failed to connect to 74.125.95.95: Network is unreachable
Connection time (ms): 70.96484375
Що робити?
По-перше: переконайтеся, що брандмауер не блокує доступ до Google.
по-друге: ви повинні зв'язатися з хост-провайдера і попросити його про проблеми з підключенням
Якщо ви бачите тільки "Починаючи пробний переклад" або взагалі нічого, то, швидше за все, ви не встановили модуль CURL в PHP.
Якщо ви використовуєте Microsoft API, створювати нові PHP файл і помістіть цей код в ньому.:
PHP Code:
<?php
require_once('./global.php');
echo "Starting translation test MS<br/>\n";
$connection = curl_init();
curl_setopt($connection, CURLOPT_URL, 'http://api.microsofttranslator.com/V2/Ajax.svc/Translate?appId='.$vbulletin->options['vbenterprisetranslator_microsoftappid'].'&from=pl&to=en&options={%22ContentType%22:%22text/html%22}&text=witaj');
curl_setopt($connection, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)');
//curl_setopt($connection, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($connection, CURLOPT_RETURNTRANSFER, 1);
$time = microtime(true) * 1000;
$result = curl_exec($connection);
$time = microtime(true) * 1000 - $time;
echo 'Test result: '.$result."<br/>\n";
echo 'Test error: '.curl_error($connection)."<br/>\n";
curl_close($connection);
echo 'Connection time (ms): '.$time;
?>
Чим завантажити його на сервер, у папці форуму корінь, і покласти, що посилання в адресний рядок браузера.
Ви повинні побачити щось на зразок цього:
PHP Code:
Starting translation test
Test result: "Hello"
Test error:
Connection time (ms): 272.083984375
Якщо щось піде не так ви отримаєте помилку, тобто якщо ви поклали Неправильний код Microsoft:
PHP Code:
Starting translation test
Test result: "ArgumentException: Invalid appId Parameter name: appId xxx"
Test error:
Connection time (ms): 416.24194335938
Чим ви повинні вкласти ID Microsoft уважно ще раз
Ви також можете отримати це повідомлення про помилку (з різних значення Ідентифікатора), який означає, що ви заблокований microsoft:
PHP Code:
Starting translation test MS
Test result: "InvalidOperationException: : ID=3641.V2_Json.Translate.365033CA"
Test error:
Connection time (ms): 237.756103516
У цьому випадку ви повинні надіслати повідомлення до служби підтримки microsoft: mtcont@microsoft.com
Це зміст в тому числі:
-ваш id microsoft Перекладач API
-повний код помилки, тобто: InvalidOperationException:: ID=3641.V2_Json.Translate.365033CA
-описати проблему, - коли здається, та ін.