2016-02-12 131 views
1

好吧,所以我總是在PHP的noob,因爲我最近開始在php上觀看視頻。所以,我試圖做的是我有這個HTML文件:PHP代碼不執行(PHP新手)

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Testing PHP</title> 
    </head> 

    <body> 
     <form action="action.php" method="POST"> 

      <input type="text" name="first"> 
      <input type="text" name="second"> 
      <input type="submit" value="Submitto!"> 
     </form> 
    </body> 
</html> 

,然後我有有這樣的代碼我action.php的文件:

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Testing PHP</title> 
    </head> 

    <body> 

     <?php 
      $first = $_POST['first']; 
      $second = $_POST['second']; 

      echo $first + $second; 
     ?> 

    </body> 
</html> 

然而,當我點擊提交按鈕在我的html文件中,它將我發送到一個空白頁面。通過url我發現它已經發送給我正確的文件,但似乎代碼不執行。

PS:我試着在谷歌搜索,但我發現大多是東西,關於Apache不執行PHP的,因爲我嘗試在我的機器上本地運行的文件,這並不爲我工作。

+3

?它不會像JavaScript那樣在客戶端運行。您需要設置本地服務器以在您的機器上本地運行PHP。 – Maverick976

+1

我想這個關於Apache的_IS_不執行PHP。嘗試右鍵單擊空白頁面並查看頁面源代碼。如果你看到你的PHP代碼,請閱讀你發現的一些東西。 –

回答

3

爲空白頁的問題: 首先,你必須在你的機器像Apache上安裝一個本地服務器,那麼你必須從本地服務器請求該頁面爲您的機器上本地運行PHP。

Here是下載頁面。

字符串連接:
在PHP字符串連接運算符是.標誌不是+星座,所以你必須使用.操盤的+運營商。

echo $first . $second; 

action.php的

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Testing PHP</title> 
    </head> 

    <body> 

     <?php 
      $first = $_POST['first']; 
      $second = $_POST['second']; 

      echo $first . $second; 
     ?> 

    </body> 
</html> 

有關字符串操作員更瞭解什麼是您使用在本地運行PHP讀取this

+0

字符串連接不是問題,它不能導致空白頁面。如果他試圖添加兩個數字,那麼「+」將起作用,而「。」會產生錯誤的結果。 –

+0

是的字符串連接在這裏不是問題,但我認爲他試圖在他的代碼中添加兩個字符串,這就是爲什麼我給他一個字符串連接的提示。 –

0

你的代碼有效(我只是實際檢查過它),但即使你在本地運行你的代碼,你仍然需要一個web服務器。

最新的PHP的版本包括內置的Web服務器,所以先試試這個(文件夾在你的HTML和PHP文件放置):

php -S localhost:8888 

然後在瀏覽器中打開http://localhost:8888/your.html

如果你的PHP是太舊(超過5.4.0以上),則需要安裝Apache或ngnix能夠運行你的PHP代碼。