2016-08-31 56 views
1

我試圖將我的第一個php腳本包含在我的一個html文檔中。代碼如下。當我嘗試運行我的php腳本時,瀏覽器開始下載並打開數百個選項卡

<?php 
$dir="pictures"; 
$listOfPictures = scandir($dir); 

for($i=2; $i<count($listOfPictures); $i++){ 
    echo "<img src=\"pictures/" . $listOfPictures[$i] . 
    "\" alt=\"picture\" height=\"250px\" width=\"150px\"" . 
    "onclick=\"showImage(this.src, 'pictures/" . 
    $listOfPictures[$i] . "');\"/>\n"; 
} 
?> 

當我第一次嘗試打開該文件.html.php它開始在我的/ tmp目錄下打開幾百個標籤和存儲的HTML文檔數百次。我以爲這是我的代碼,所以我把循環減少到只有10次(該數組的大小約爲500),認爲這是問題所在。它只是做了一次。於是我創建了一個如下所示的基本PHP腳本。

<!DOCTYPE html> 
<html> 
<body> 

<?php 
    echo 'Hello world'; 
?> 
</body> 
</html> 

它仍然做到了。有什麼建議麼?我需要添加的任何細節?提前致謝。

編輯:我可以從命令行運行良好的PHP程序。上面的腳本輸出正是我所期望的。我在arch linux上運行apache。

+0

這可能與您的主機相關... – bwoebi

+0

這是在我家的電腦上。一切都在本地運行。 – user3736114

+1

聽起來像也許你的服務器沒有執行你的PHP正確,並正在觸發某種下載?你自己設置了服務器,還是使用某種託管? – Perspective

回答

1

我懷疑發生的事情是這樣的:

當你雙擊瀏覽器嘗試打開該文件時,不知道如何處理它試圖打開它,如果它是一個下載的文件PHP擴展。我假設打開PHP的默認軟件是您的瀏覽器。這在循環中反覆發生。

爲了讓Apache來打開它,在你的網頁瀏覽器中打開一個標籤通常,去http://localhost/index.php

(我這裏假設你的文件被稱爲index.php並且在任何設置爲你的Apache的DocumentRoot)。

+0

下班後我會試試這件事,並讓你知道它是如何發生的。有沒有辦法配置我的瀏覽器來讀取PHP文件?我喜歡在一個單獨的目錄中調整我的html文件,然後在我知道它們很穩定時將它們移動到apache。 – user3736114

+0

你不想配置它,你的web瀏覽器就是PHP代碼輸出的客戶/使用者。 PHP文件只是文本,Web服務器(Apache)根據需要使用擴展名.php以及打開/關閉標籤來啓動PHP預處理器。代碼運行並將最終結果(HTML)發送回知道如何呈現它的瀏覽器。 – avip

+0

這是錯的。我試圖從瀏覽器運行而不是服務器。 – user3736114

相關問題