Я делаю AJAX-запрос примерно так, используя JQuery:
$.ajax({
type: "GET",
url: "getvideo.php",
data: 'videoid=' + vid,
Я использую firebug, чтобы сообщить мне, что происходит, и он сообщает, что произошла внутренняя ошибка сервера 500? Вот часть этого скрипта:
$videoid = $_GET['videoid'];
$get = new youtubeAPI();
$get->getVideoAPI($videoid);
class youtubeAPI extends Exception {
function getVideoAPI($videoid){
if (isset($videoid)) {
$clientLibraryPath = 'library';
$oldPath = set_include_path(
get_include_path() . PATH_SEPARATOR . $clientLibraryPath
);
require_once 'Zend/Loader.php'; // the Zend dir must be in your include_path
Я использую тот же вызов AJAX для других скриптов, и они в порядке. Я использовал эти сценарии на другом сервере, и все нормально , за исключением , на другом сервере файл называется «getvideo.php5», тогда как здесь я назвал его «getvideo.php», так как у меня установлен PHP 5.2.6 только.
Пожалуйста, помогите
UPDATE
Это ошибка:
[Ср. 11 февраля 20:48:17 2009] [error] [client xx.xx.xxx.xxx] Неустранимая ошибка PHP: класс 'DOMDocument' не найден в / var / www / html / library / Zend / Gdata /App.php в строке 734, реферер: http://xx.xx.xx.xxx/
Я спрятал свой IP. В этой строке:
public static function importString($string, $className='Zend_Gdata_App_Feed') {
// Load the feed as an XML DOMDocument object
@ini_set('track_errors', 1);
$doc = new DOMDocument(); // LINE 734
$success = @$doc->loadXML($string);
@ini_restore('track_errors');
Но я не должен играть с этим, верно? В любом случае, этот класс не существует как сценарий и не существует в этом сценарии как класс. Я ИСПОЛЬЗУЮ ЭТУ ЖЕ БИБЛИОТЕКУ В МОЕМ ДРУГОМ СЕРВЕРЕ. Это тоже отсутствует, что тоже ??? Это то, что я скачал из zip-папки Youtube API.
решаемые
Это был совершенно новый сервер, на котором был установлен минимальный PHP. Мне не хватало функций PHP dom. Быстрая установка исправила эту проблему. Спасибо, что напомнили мне посмотреть логи. Я должен был попробовать это в первую очередь.
yum install php-xml
yum install php-xmlrpc