2012-01-28 71 views
1

我完全難住這一個。完全難倒了。Javascript源碼將不會加載..

我正在構建廣告網絡框架。在做原型的時候,我在科丁根做了大部分的建築。在那裏一切正常。 雖然我剛剛遷移到一個新的主機,但我有這個奇怪的問題。奇怪的。

忍耐與我解釋這一點。

我的廣告網絡的廣告通過用戶放置在他的網站上的代碼段放置。下面的代碼片段:

<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,當直接輸入到地址欄中時,會像往常一樣顯示廣告。但是,當它通過我向您展示的第一個代碼段加載到任何其他頁面時,廣告就不會出現。奇怪的是,舊的主機上的舊的ad_engine.php文件仍然可以正常工作,即使我將它加載到新主機的頁面上。跟隨?

雖然沒有廣告出現,但我知道ad_engine.php頁面是我的新主機上的頁面,我知道它正在處理中,因爲MySQL的更改是按照他們應有的方式進行的。

我試圖盡我所能解釋這個問題,如果您有任何問題只是讓我知道。

幫助?

+0

請添加一些對調試你的PHP源代碼,但我認爲還有一個非常好的機會,PHP錯誤上破你的Javascript新的服務器。嘗試在'ad_engine.php'的最頂端添加'ini_set('display_errors',0);'。您需要查看'ad_engine.php'的原始輸出(我們也一樣)。這看起來像是一種向DOM添加新腳本的稍微奇怪的方式 - 一方面,document.write讓我不寒而慄... – DaveRandom 2012-01-28 01:23:58

+1

這是一個很長的鏡頭,但是您是否有任何機會安裝了adblock?它阻止/隱藏一類「adframe」的div。 – pjumble 2012-01-28 01:26:02

+0

聽起來像是一個MIME類型問題。原始服務器是否有STRUTS層(或類似的)來製作特定.php文件的特例 - 例如。用'application/javascript'頭來提供它? – 2012-01-28 02:07:49

回答

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>');