หากทุกอย่างถูกทำงานได้ดีและก็จะไม่ได้แล้วหนึ่งความเป็นไปได้คือการที่คุณจะมีปัญหากับผู้ให้บริการการแปลของคุณ (คนอื่น ๆ มีดังนี้ : การตั้งค่าบางถูกเปลี่ยน, MOD ใหม่เพิ่มซอฟต์แวร์บางปรับปรุง)
คุณมีวิธีที่ง่ายมากในการตรวจสอบมีปัญหากับ V1 Google API หรือจะเป็นที่อื่น เพื่อตรวจสอบโปรดเพียงแค่สร้างไฟล์ php ใหม่ด้วยเนื้อหานี้ :
ไฟล์ที่คุณสามารถค้นหาในนี้ vBET แพ็คใน do-not-upload/tool s/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;
?>
อัปโหลดไปยังเซิร์ฟเวอร์ของคุณ (รากฟอรั่มของคุณ) และใส่ URL นั้นในเบราว์เซอร์ของคุณ หากทุกอย่าง ok คุณจะได้รับคำตอบ :
Code:
Starting transaltion test
Test result: {"responseData": {"translatedText":"Welcome"}, "responseDetails": null, "responseStatus": 200}
Test error:
ไม่มีค่าและผลที่มีตามที่คุณเห็นข้อผิดพลาดได้ 200 สถานะ ซึ่งหมายความว่าทุกอย่าง ok
ถ้าคุณถูกบล็อกที่ตอบสนองจาก Google จะดูเหมือนว่า :
Code:
{"responseData": null, "responseDetails": "Suspected Terms of Service Abuse, please contact ajaxapis-support@google.com.", "responseStatus": 403}
ถ้าคุณถูกบล็อกที่ -- เพียงแค่เขียนไปที่ Google เป็นข้อความว่า มันจะช่วยให้เราเพื่อหาเหตุผลที่บางทีมันอาจจะเป็นความผิดพลาดบางอย่างบางทีคุณอาจมีจะมีการเปลี่ยนแปลงบางสิ่งบางอย่างเพื่อให้พอดีกับที่ดีกว่าเพื่อเข้าสู่ระบบของ 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
มากกว่าที่คุณควรวางของ Microsoft ID ของคุณอย่างรอบคอบอีกครั้งหนึ่ง
นอกจากนี้คุณยังสามารถเรียกดูข้อผิดพลาดนี้ (กับ ID ค่าแตกต่างกัน), ซึ่งหมายความว่า คุณจะ ถูกบล็อก โดย 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 แปล API ของ microsoft
-เต็มรหัสข้อผิดพลาด เช่น: เกิด InvalidOperationException:: ID=3641.V2_Json.Translate.365033CA
-อธิบายปัญหา, - เมื่อปรากฏ ฯลฯ