2013-12-13 2 views
-1

У меня есть главная страница, которая включает в себя мои классы вроде этого require_once('../classes/init.php');, на этой странице у меня есть некоторые вызовы ajax, загружающие скрипт в DIV, но загружаемый контент требует доступа к классам I включается с главной страницы, но когда я пытаюсь получить доступ к членам класса из сценария, который загружается динамически, я получаю сообщение об ошибке, когда класс, к которому я пытаюсь получить доступ, не определен. Есть ли способ получить доступ к этим классам из динамически загруженного сценария?Использование классов в скриптах, загруженных из jquery

Образец

main_site.php

require_once('../classes/init.php'); 
    ...... 
    .......... 
    <a>load script ClassXYZ into div</a> 
    <div> ClassXYZ script loaded after user clicks on the anchor link above </div> 

ClassXYZ.php

$ClassXYZ = new Class(); 
    $ClassXYZ->doStuff(); 

Ошибка Фатальная ошибка, ClassXYZ не найден в ........

ClassXYZ объявлен в ../classes/init.php файле

+1

Что делает jquery с этим? PHP работает на сервере, ему все равно, что запускается на клиенте для его загрузки. – Barmar

+0

Боюсь, мы просто не понимаем, что вы пытаетесь сделать здесь, и является ли это проблемой на стороне сервера или проблемой на стороне клиента. Просьба уточнить. – jfriend00

+0

Вы пытаетесь загрузить PHP в div и затем выполнить его? Это не имеет никакого смысла. – jfriend00

ответ

1

В идеале ваш подход должен работать. Попробуйте добавить require_once ('../ classes/init.php'); динамически с другим кодом.

+0

Я попробую это и посмотрю, работает ли она, но я использую 'spl_autoload_register()' в файле 'init.php', поэтому я решил, что он все равно будет работать. – kabuto178

+0

На самом деле ваш подход прав, но мне пришлось использовать абсолютный путь -_-.... Я ненавижу, когда простые вещи вызывают такие большие проблемы, спасибо за ваши советы – kabuto178

Смежные вопросы