2015-09-02 47 views
0

可以說我有這個表格form.php文件。如何在不使用ajax的情況下在php頁面中顯示php表單結果?

<form action="process.php" method="POST"> 
<input type="text" name="message"> 
<input type="submit" value="Submit"> 
</form> 
<span class="result"></span> 

process.php包含

<?php 
if(isset($_POST['message'])){ 
    $message = $_POST['message']; 
    if(!empty($message)){ 
    echo 'Your message: '.$message; 
    }else{ 
    echo 'Please enter some message.'; 
    } 
} 

現在,如果我想顯示的process.phpresult類的form.php的span標記內輸出我要麼需要使用AJAX,或會話/ Cookie或文件處理。有沒有其他方法?

回答

0

試試這個。它將發佈形式值相同的頁面

<form action="form.php" method="POST"> 
<input type="text" name="message"> 
<input type="submit" value="Submit"> 
</form> 
<span class="result"></span> 

<?php 
if(isset($_POST['message'])){ 
    $message = $_POST['message']; 
    if(!empty($message)){ 
    echo 'Your message: '.$message; 
    }else{ 
    echo 'Please enter some message.'; 
    } 
} 
+0

它使html和php處理在同一頁面,我不尋找 –

1

您可以簡單地將代碼中process.php文件中的形式跨越標籤。

<form action="form.php" method="POST"> 
<input type="text" name="message"> 
<input type="submit" value="Submit"> 
</form> 
<span class="result"> 
<?php 
    if(isset($_POST['message'])) 
    { 
     $message = $_POST['message']; 
     if(!empty($message)) 
     { 
      echo 'Your message: '.$message; 
     } 
     else 
     { 
      echo 'Please enter some message.'; 
     } 
    } 
?> 
</span> 
+0

我的表單和php處理應該在兩個不同的文件 –

0

好了,這是做這件事的一種方法:在form.php

然後在process.php做到這一點:

<?php 
    if(isset($_POST['message'])){ 
    $message = $_POST['message']; 
     if(!empty($message)){ 
     // echo 'Your message: '.$message; 
     header("location: form.php?text=$message") 
     }else{ 
     echo 'Please enter some message.'; 
     } 
} 
?> 

沒有使用此方法的一些缺點:

  1. 變量$ message是p通過URL進行過濾,所以不應該太長,因爲URL有長度限制
  2. 使用$ _GET []使URL在URL上可見,因此不應將密碼和其他敏感信息用作郵件。

我希望這會有所幫助。

相關問題