2012-01-28 2 views
1

Я полностью в тупике на этом. ПОЛНОСТЬЮ тупо.Источник Javascript не загружается .. вид

Я создаю рамки для рекламной сети. Во время прототипирования я сделал больше всего своего здания в Кодингене. Там все отлично работало. Я просто перешел на новый хост, и у меня есть эта одна странная проблема. Weird.

Принесите со мной, как я объясню это.

Объявления для моей рекламной сети размещаются через фрагмент кода, который пользователь размещает на своем сайте. Вот фрагмент кода:

<script type="text/javascript"> 
document.write('<scr' + 'ipt type="text/javascript" src="http://mysite.net/ad_engine.php?pid=333"></scr' + 'ipt>'); 
    </script> 

И, после того, как PHP обрабатывает запрос, вот выход на странице ad_engine.php:

document.write("<div class='adframe' style='min-width:250px; min-height:100px;'><a href='click.php?adid=4224&pid=333' target='_self''><img src='http://mysite.net/ads/image.png' border='0' class='adimage' style='min-width:125px; min-height:100px;' /></a><span class='adtext'><a href='click.php?adid=4224&pid=333' target='_self''>This is the ad contents right here</a></span></div>"); 

Этот метод работал хорошо, когда я разрабатывал на Kodingen. Объявление появилось на любой странице, на которую я разместил этот фрагмент. Но, поскольку вы перешли на мой новый сервер и ничего не изменили - этот метод не будет работать.

НА НОВОМ СЕРВЕРЕ: ad_engine.php, при вводе непосредственно в адресную строку, показывает объявление, как обычно. Но когда он загружается на любую другую страницу через этот первый фрагмент кода, который я вам показал, объявление не появится. Как ни странно, файл OLD ad_engine.php - тот, что находится на моем старом хосте, - все еще отлично работает, даже если я загружаю его на страницу моего нового хоста. Следить?

Хотя объявления не отображаются, я знаю, что страница ad_engine.php, одна на моем новом хосте, я знаю, что она обрабатывается, потому что изменения MySQL сделаны так, как они должны.

Я попытался как можно яснее объяснить эту проблему, если у вас есть какие-либо вопросы, просто дайте мне знать.

Помощь?

+0

Пожалуйста, добавьте некоторые из ваших PHP исходного кода для отладки, хотя я считаю, есть очень хороший шанс, что ошибки PHP ломают свой Javascript на новый сервер. Попробуйте добавить 'ini_set ('display_errors', 0);' в самом начале 'ad_engine.php'. Вам нужно посмотреть исходный вывод 'ad_engine.php' (как и мы). И это выглядит немного странным способом добавления нового сценария в DOM - во-первых, 'document.write' заставляет меня содрогаться ... – DaveRandom

+1

Это длинный снимок, но у вас есть какой-либо шанс установить adblock? Он блокирует/скрывает divs с классом «adframe». – pjumble

+0

Звучит как проблема с типом MIME. У исходного сервера был слой STRUTS (или аналогичный), чтобы сделать особый случай этого конкретного .php-файла - например. служить ему с заголовком 'application/javascript'? –

ответ

0

Уже тестировалась проблема с кешированием? Может быть, ваш новый хост имеет разные настройки кеша?

Попробуйте добавить некоторое случайное число в .php вызов:

document.write('<scr' + 'ipt type="text/javascript" src="http://mysite.net/ad_engine.php?pid=333&x=RANDOM_NUMBER_GOES_HERE"></scr' + 'ipt>'); 
Смежные вопросы